【问题标题】:Priority order in BFS (Breadth First Search Algorithm)BFS(广度优先搜索算法)中的优先顺序
【发布时间】:2018-08-18 16:25:22
【问题描述】:

从最顶层的节点1开始,在节点2,将有两个相邻的节点访问,即34。我们应该把哪一个放在队列中并打印?也请说出原因。

【问题讨论】:

  • 没关系...除非出于某种原因它对很重要。
  • @MattTimmermans 我是从考试的角度问的。你的意思是除非没有明确提到是优先考虑大数还是小数,否则我们可以选择哪种方式?
  • 是的,BFS 不需要特定的顺序。您通常按照找到它们的任何顺序排列相邻节点。
  • @MattTimmermans 你想添加一个正式的答案吗?

标签: algorithm queue traversal breadth-first-search


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-16
    • 1970-01-01
    • 2011-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多