广度优先搜索(BFS)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。
算法:
1、构造由根组成的队列Q;
2、If Q的第一个元素x是目标节点 Then 停止;
3、从Q中删除x, 把x的所有子节点加入Q的末尾;
4、If Q空 Then 失败 Else goto 2.
举例:
八数码问题:
------输入:具有8个编号小方块的魔方
------输出:移动系列,经过这些移动,魔方达到如下状态
分析:
每一个空有两种移动方法,可以转化成树形问题,按照算法搜索到红色部分跳出循环,输出解。如图