最大堆排序

时间:2011-12-11 21:31:54

标签: arrays binary-tree heapsort

如果 A [1 .. n] 是最大堆,可能是数组的第二个,第三个,第四个......最大的元素?

  

[1]

     

[2] [3]

     

[4] [5] [6] [7]

2 个答案:

答案 0 :(得分:0)

如您所知,第一个元素是最大值。接下来是它的孩子在2 * k和2 * k + 1的位置。因此,如果您是1,那么下一个数字大小为2和3。

答案 1 :(得分:0)

让我们这样做 - 最大的元素在根。谁是第二大和第三大候选人?答案 - >根的直接孩子。为什么?因为root子节点下面的所有元素都比root子节点小。

同样谁是第四大候选人?第2和第3大元素的子元素,即从索引4到索引7的节点。