用于计算树中根的左侧节点数的函数[复制]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用于计算树中根的左侧节点数的函数[复制]相关的知识,希望对你有一定的参考价值。

这个问题在这里已有答案:

如何计算根节点左侧的节点?这与计算树中的所有左节点不相似。

答案

您应该通过跟踪根和所有其他节点之间的水平距离来计算根左侧的节点。按顺序遍历树并记住当前位置(如果向左移动则为+1,如果向右移动则为-1)应足以完成工作。

def count_left(tree, current_position):
    if tree is None:
        return 0

    is_left = 1 if current_position > 0 else 0
    return is_left + count_left(tree.right, current_position -1) + count_left(tree.left, current_position +1)

count_left(tree.left, 1)

以上是关于用于计算树中根的左侧节点数的函数[复制]的主要内容,如果未能解决你的问题,请参考以下文章

二叉树中的权值是啥?

二叉树中的权值是啥?

[程序员代码面试指南]二叉树问题-计算完全二叉树节点数

BST 中的节点数

543-求二叉树直径

在二叉树中,对于每个节点,左右节点数之差