BFS(广度优先搜索)

广度优先搜索算法(Breadth-First-Search),是一种图形搜索算法。

简单的说,BFS是从根节点开始,沿着树(图)的宽度遍历树(图)的节点。如果所有节点均被访问,则算法中止。BFS同样属于盲目搜索。一般用队列数据结构来辅助实现BFS算法。

算法步骤:

1. 首先将根节点放入队列中。

2. 从队列中取出第一个节点,并检验它是否为目标。如果找到目标,则结束搜寻并回传结果。否则将它所有尚未检验过的直接子节点加入队列中。

3. 若队列为空(即所有节点都已检查),表示整张图都检查过了——即图中没有欲搜寻的目标。结束搜寻并回传“找不到目标”。

4. 重复步骤2。

 

posted @ 2017-11-02 21:31  wade&luffy  阅读(801)  评论(0编辑  收藏  举报