0
我想将minHeap类转换为maxHeap类。我得到了minHeap类的代码,其中一种方法是添加。它看起来像这样:这是一个有效的MaxHeap结构吗?
while (index > 1 && getParent(index).compareTo(newElement) > 0)
第一节点自动设置为空,这样得到的一切添被放置在节点1日起实施。如前所述,该代码提供了minHeap结构。因此,将其更改为maxHeap,我只是翻了比较符号,像这样:
while (index > 1 && getParent(index).compareTo(newElement) < 0)
我进入项目被存储一个整数值。在插入的顺序,他们是:
3
7
8
10
6
1
9
2
在minHeap结构,这些都存储在节点像这样:
1
2 3
6 7 8 9
10
在maxHeap结构,改变了符号并将它们存储如下所示:
10
8 9
2 7 3 6
1
请注意,它们不再与minHeap结构中的顺序相同。这是否有问题,或者它仍然是一个有效的maxHeap?
道歉为我可怕的尝试显示树状结构。
谢谢 - 我虽然这样做,只是想确定。 – 2013-03-24 23:58:21