首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

图的广度优先遍历解决办法

2012-03-21 
图的广度优先遍历图的广度优先遍历是不是不能用递归来实现呢?看到别人说因为使用的是队列所以不能用递归,

图的广度优先遍历
图的广度优先遍历是不是不能用递归来实现呢?看到别人说因为使用的是队列所以不能用递归,这个要怎么理解呢???

[解决办法]
BFS、DFS都可以用递归或者都可以不用递归。
“别人说因为使用的是队列所以不能用递归”,这种说法完全是误导。

[解决办法]
D和B的区别不在于是否递归上,不过我还真想知道如果BFS可以用递归实现的话具体是怎么实现法
[解决办法]
DFS与BFS的区别不在是否递归上边,而是其访问的优先性:

DFS是深度优先,即,当访问到一个新节点时,优先于找到它的一个未访问过的邻接点,继续访问~

BFS时广度优先,即,当访问到一个新节点时,优先于把它所有的未访问的邻接点都访问了,然后继续~
[解决办法]
能不能递归跟用没用队列没什么必然关系吧
不过我很好奇BFS是怎么用递归实现的
[解决办法]
什么思路嘛 都可以利用递归操作啊 利用队列只是在不递归的条件下使用
[解决办法]
“使用队列”与“不能用递归”这两句话之间没有关系。
图的广度优先搜索确实没法使用递归,但上面那句话也确实是理解错误。

图的广度优先搜索是一种分层的查找过程,它并不是一个递归的赛程。为了实现这种逐层的访问,算法必须借助一个队列。
这正是广度优先搜索是使用队列进行操作而不是递归的原因。

以下是复制粘贴内容:报着真诚的态度,怀着认真的心去回好每一个帖子!求给分!

热点排行