首页 > 代码库 > bfs (宽度搜素)

bfs (宽度搜素)

bfs用于算最短路,因为最短路嘛,每步的存起来看其结果是否和要求就好。所以用队列,注意要用struct队列 因为要保存的信息较多,一般坐标,步数都要保存所以用struct。基本过程: 先入队初始结构,然后while循环,条件队列非空,取出来队列首个结构,得到位置信息,创建新结构,朝所有符合要求方向延伸,这儿有技巧,用个2维数组,几个方向就一个for循环做几次,每次延伸一个方向,判断是否符合条件,符合则入队,要相同的元素注意不能入队,要定个数组来区别是否访入队过,就是盘判断坐标对应的值就OK,二维数组用来改变方向。基本就这样。

 

bfs (宽度搜素)