元素32、15、20、30、12、25、16以给定的顺序一一插入到Max Heap中。最终的最大堆为。
(一)
(B) b
(C) c
(D) d答案: (A)
说明:最大堆是完整的二叉树,其中每个非叶节点的值都大于或等于其子节点的值。
对于给定的情况,首先将所有值插入完整的二叉树中。然后,我们应用移位。我们要做的是从最底层的非叶子节点开始。如果它小于任何一个(或两个)子节点,则将其与最大的子节点交换。以同样的方式,我们继续向上移动树,直到所有非叶节点都满足最大堆的属性。
因此,我们第一次制作完整的二叉树时,
32
/ \
15 20
/ \ / \
30 12 25 16
现在,我们需要将15与30交换,并将20与25交换。
32
/ \
30 25
/ \ / \
15 12 20 16
这是必需的最大堆,并且与选项A匹配。
因此,A是正确的选择。
如果您在以上文章中发现任何错误,请在下面发表评论。这个问题的测验