0

如何找到左右子树的高度,我在以下链接 C# BST中使用了此代码

任何帮助,将不胜感激。

亲切的问候

4

1 回答 1

0

好吧,如果它是 BST 的正确实现,那么它们应该是平衡的。

但是为了测试它,这里有一个简单的递归实现。

public int TreeDepth( TreeNode<T> tree, int depth = 0 )
{
    int leftDepth = tree.Left != null 
        ? TreeDepth( tree.Left, depth + 1 ) 
        : depth;
    int rightDepth = tree.Right != null 
        ? TreeDepth( tree.Right, depth + 1 ) 
        : depth;
    return leftDepth >= rightDepth 
        ? leftDepth 
        : rightDepth;
}
于 2013-02-27T11:59:11.287 回答