14得票2回答
现实世界中的前/后序树遍历示例

我很明白树的先序遍历、中序遍历和后序遍历算法(参考链接)。我也理解它们各自的用途:中序遍历用于有序的遍历二叉搜索树,先序遍历用于克隆一棵树,但是我无论如何都不能想出一个需要用到后序遍历的现实任务。 你能给我举个例子吗?还有,你能提供任何更好的先序遍历用途吗? 编辑:除了表达式树和逆波兰表示...

26得票2回答
在C#中遍历对象树

我有一棵树,由多个对象组成,每个对象都有一个名称(string)、ID(int)和可能是相同类型的子对象数组。如何遍历整个树并打印出所有的ID和名称? 作为一个编程新手,实际上我对此感到困惑,因为我不知道有多少层。现在我正在使用一个 foreach 循环来获取根节点下面直接的父对象,但这意味...

31得票3回答
不使用递归遍历 n 叉树

如何在不使用递归的情况下遍历一个 n 叉树? 递归方法:traverse(Node node) { if(node == null) return; for(Node child : node.getChilds()) { traverse(...

9得票3回答
如何在不使用jQuery或修改Element.prototype的情况下获取DOM树中多个层级的父元素?

我想知道在使用原生JS时,是否有一种方法可以选择DOM树中特定的元素,而不必多次使用parentNode。我知道可以使用jQuery和修改Element.prototype来实现这一点,但还有其他更好的方法吗? const deleteButtons = document.querySe...

9得票2回答
非二叉树的顺序遍历

对于比二叉树更宽的树,术语“中序遍历”是否有明确定义的含义,或者“前序”和“后序”是唯一有意义的DFS类型?我的意思是每个节点具有n>2个孩子。 我猜对于偶数的n,在遍历完n/2个孩子后回到“根”可能意味着这样做,但是是否曾经使用过这种方法?奇数的n呢?

213得票4回答
广度优先与深度优先搜索

遍历树/图时,广度优先和深度优先的区别是什么?提供任何编码或伪代码示例都可以。

7得票4回答
Python: 嵌套函数中的引用变量指向外部作用域(非全局)

我正在尝试递归遍历一棵树,并跟踪遍历的路径,直到找到我要找的元素。然而,我遇到了两个问题: 虽然我的当前代码返回了正确的解决方案,但它有点hacky。我必须将正在遍历的当前路径推入final_path,然后返回final_path [0]。如果我只是尝试设置final_path = pat...

12得票2回答
广度优先搜索遍历 VS 先序遍历 VS 深度优先搜索遍历

对于一棵二叉树,广度优先遍历(BFS)和先序遍历是否相同?我对这两种不同类型的遍历有点困惑。请问有人能给我解释一下吗?此外,先序遍历如何与深度优先遍历(DFS)相比较? 非常感谢!

9得票3回答
为什么中序遍历和先序遍历在创建判断T2是否为T1子树的算法中很有用?

我正在查看一本面试书,其中有一个问题是: 您有两个非常大的二叉树:T1,具有数百万个节点,和T2,具有数百个节点。 创建算法以确定T2是否是T1的子树。 作者提到这可能是一种解决方案: 请注意,此处的问题指定T1具有数百万个节点,这意味着我们应该小心使用多少空间。例如,假设T1有1000...

17得票6回答
以蜿蜒形式打印二叉树的层序遍历结果

我需要以螺旋形式打印二叉树的节点,使用层序遍历。即不同级别的节点应以螺旋形式打印。 例如:如果树看起来像这样: 输出应为10 5 20 25 15 6 4。 我使用的算法很简单,只是层序遍历的一个小变化。我只取了一个变量p。如果变量等于1,则按给定级别从左到右打印顺序,如果为-1,则...