关于广度优先遍历(Breadth First Search)的提纲性内容

来源:互联网 发布:c语言计算排列组合 编辑:程序博客网 时间:2024/05/22 06:47

一、深度优先遍历可以使用递归 或者 栈的方式实现,然而广度优先应当使用队列,究其原因,广度优先需要保证“先被访问的顶点的未访问邻接点后被访问的顶点的未访问邻接点 先访问” 类似于FIFO 问题,借助于队列这种数据结构,我们可以很好地实现广度优先遍历。

二、具体实现:

1.建好队列q

2.源点入队

3.队尾元素出队,访问该元素

4.刚刚出队的那个元素的未访问邻接点入队

5.循环3与4 直到队列为空


找几套题目做一做就知道是怎么回事了。尤其是对付用邻接表表示的图,此方法特别直观。

其他相关内容可以参考mooc上的“数据结构”


阅读全文
0 0
原创粉丝点击