在堆的最后一级计算堆大小

时间:2017-07-14 10:45:58

标签: algorithm data-structures heap heapsort

是否有一个函数来计算最后一级中堆的堆大小(最大堆和最小堆)?

例如,当Heapsize为128时。

当我在二叉树中有128个节点时,是Heapsize 128吗?

1 个答案:

答案 0 :(得分:1)

二进制堆是complete binary tree。这使我们有可能从堆的大小中找到级别数:
enter image description here
具有k级别(height(H) == k-1)的堆的最小大小为2^k,最大值为2^(k+1)-1