对于二叉树,广度优先搜索遍历(BFS)与预订遍历相同吗?我对这两种不同类型的遍历感到有些困惑。有人可以向我解释一下吗?此外,预订遍历与深度优先搜索遍历(DFS)相比如何?
非常感谢!
不,预订遍历实际上是深度优先搜索(DFS)遍历的一种形式。 DFS有三种不同形式,即:
为了证明广度优先搜索(BFS)遍历与预订遍历不同,我将在下面显示一个反例:
要清楚,二叉树与二叉搜索树不同,即二叉树可以定义为:
二叉树 - 其元素最多包含2个子元素的树称为二叉树。请注意,没有提到孩子的顺序。
现在回到反例,请使用以下简单的二叉树:
对于预订遍历,按以下顺序访问节点:预订:[1,2,4,3]
现在,对于广度优先搜索遍历,按以下顺序访问节点:
FSO:[1,2,3,4]
注意:预订遍历与BFS遍历不同。
有关不同树遍历的更多信息,请查看此link
希望,这有帮助!