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

[1]

[2] [3]

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

===============>>#1 票数:0 已采纳

如您所知,第一个元素是最大值。 紧随其后的是其子节点2 * k和2 * k + 1。 因此,如果您基于1,则下一个数字的大小为2和3。

===============>>#2 票数:0

让我们这样-最大的元素在根。 谁是第二大和第三大候选人? Ans-> root的直接子代。 为什么? 因为root子级下的所有元素都小于root的子级。

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

  ask by Tiago translate from so

未解决问题?本站智能推荐: