非完全二叉树高度与深度的关系



"设H为树的高度。如果堆不完整二叉树(因为底层没有满),那么给定深度的节点并不都具有相同的高度。例如,尽管所有深度为H的节点高度为0,但节点深度为H-1的,其高度可以为0或1">

在搜索语句" N元素堆中给定高度h的最大节点=N/2^(h+1)的解释时发现了这个解释">

这是否意味着不同层次(不同深度)的节点可以有相同的高度?

我知道没有。堆中叶子的个数是N/2,这有什么关系吗??

例如,这是一个有效的堆:

__1__
/     
3       5
/      / 
4   9   6   10
/ 
7   11

现在比较节点5和节点4的情况。它们在不同的层次(即在不同的深度),但具有相同的高度(即,它们所根的子树具有相同的高度)。

另一方面,我们有节点3和5,它们在同一层,但它们的高度不同。

关于术语的说明。引号有"如果堆不是一个完整的二叉树…">。其他来源将上述示例定义为"完全二叉树",而所有叶子都位于底层的树则称为"完全二叉树"。所以我把这句话读成"如果堆不是一个完美的二叉树…">。看到维基百科:

一些作者使用术语完全来代替完全二叉树,如上面定义的

这显然是令人困惑的,这意味着我们总是需要验证作者使用这些术语的意思。