algorithm - 遍历树叶节点,无需全树遍历

标签 algorithm tree time-complexity tree-traversal

在具有父指针和子指针的通用树结构中,是否可以在不遍历整棵树的情况下遍历叶节点?例如,从最左边的叶节点开始。这个想法是在深层树上进行优化。

最佳答案

没有。要到达每个叶子,您必须遍历每个节点。

因为树是非循环的,所以不存在冗余路径。因此,没有“额外”的方式获得名额,也没有捷径可走。每个节点要么是 (a) 叶子,要么是 (b) 通往一个或多个叶子的关键路径上。

必须以某种方式增强数据结构以优化叶子遍历。

关于algorithm - 遍历树叶节点,无需全树遍历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31821300/

相关文章:

time-complexity - 8^log2(n) 的大 O 表示法

c# - 比较不同对象但具有相同字段的 2 个列表

php - php中的小排序算法

mysql - 如何仅使用 MySQL 循环遍历表树

javascript - 在 O(n) 中组合不同的数字范围

algorithm - 递归查找大 O 时间复杂度

python - 最接近零的两个产品之间的差异 : non brute-force solution?

python - 如何修复 ZigZag 问题中的 'list index out of range' 错误?

php - 使用php构建概率树?

python - 使用递归验证二叉搜索树