据说BFS总是给一棵树,而DFS则给一棵树。 但我不明白BFS如何总能给树。 考虑这个图和起点b
我们如何在这里找到一棵树?
答案 0 :(得分:0)
不明白为什么你有一个有向图和一个终点起点b。 从b,它可以无处可去,但留在b。
如果没有指示,那么它将是b-> a-> c-> d,无论它是BFS还是DFS。
第一次听到DFS返回一个森林。猜猜人们认为这是因为每次到达终点时它都会返回父节点。
答案 1 :(得分:0)
树基本上是连接图(每对节点之间至少有一条路径),没有循环。
如果我们在连接图上进行BFS,我们将访问图中的每个节点,每个节点只访问一次。因此,从起始节点到我们访问的每个节点只有一条路径,因为我们只访问它一次。通过与上面相同的参数在任何一对节点之间也只有一条路径(如果你想象一个图形并理解它会更有意义)。所以,没有周期,因此它是一棵树。
答案 2 :(得分:0)
BFS没有提供树。事实上,它使用队列。除了DFS之外,BFS也是一种通过树的算法。