BFS(广度优先搜索算法)中的优先级顺序

问题描述 投票:0回答:2

从最顶层的节点

1
开始,在节点
2
处,将有两个相邻的节点需要访问,即
3
4
。我们应该将哪一个放入队列并首先打印?还请告知原因。

algorithm queue traversal breadth-first-search
2个回答
1
投票

根据其定义,BFS 应该始终在处理 3 和 4 之前处理 2 和 5。
换句话说,顺序是由距原点的距离决定的。
对于普通 BFS,如果 2 在 5 之前或 5 之后处理,则没有区别,因为如果 3 在 4 之前或之后处理,则没有区别。
请注意,这对于深度优先搜索来说并非如此。


0
投票

我碰巧看到了之前的答案, 5 不是 1 的相邻节点。 5 将在 3 和 4 之后处理。

© www.soinside.com 2019 - 2024. All rights reserved.