定义平衡二叉树时术语混淆:子树的高度与节点的高度

Confusion in terminology while defining Balanced Binary Tree: Height of a subtree vs. Height of a node

引用 answer to this question

平衡二叉树是:

  1. 左右子树的高度最多相差1,AND
  2. 左子树平衡,AND
  3. 右子树平衡

现在,使用相同的例子

     A
   /   \
  B     C  
 /     / \  
D     E   F  
     /  
    G  

树的根在 A。

现在,在查看高度平衡树的定义时,第一点是:

  1. 左右子树的高度最多相差一个

    如果我当前在节点A,要确定A的LEFT SUBTREE的高度,如果我计算我很困惑:

    • 从 A (D) 或
    • 最左边 child 看节点 A 的高度
    • 节点 B 的高度从 A 的最左边 child 看(通过扩展 B)(D)

    如果我当前在节点A,要确定A的右子树的高度,如果我计算我很困惑:

    • 从 A (F) OR
    • 向右 child 最深处看节点 A 的高度
    • 节点 C 从 A 向 child 最右边看的高度(通过扩展 C)(F)

'The height of a subtree'一般译为'height of the root of the subtree'。在时间戳 13:17.

听这个 MIT OpenCourseWare lecture 时碰到这个解释