1

我在这个问题上弄错了,因为问题在 Binary Max Heap 中说:“如果 y 是节点 x 的右子树中的一个节点,那么 y.key >= x.key。” 我附上了下面问题的截图。

二进制最大堆问题

如果 y 是节点 x 的子树中的一个节点,我认为 x.key 比 y.key 大,因为根据最大堆属性,父节点大于其子节点。我想知道我是否遗漏了什么。提前致谢。

4

2 回答 2

0

不要认为你缺少任何东西。Minheap 冒泡到 root 的最小密钥,maxheap 冒泡到 root 的最大密钥。

现在,最小-最大堆......这些很有趣。

于 2020-06-06T19:25:10.583 回答
0

二元最大堆是其中 -

  • 根节点具有最大值。

  • 每个节点的值等于或小于其父节点的值。

  • 是完全二叉树。

在 Binary Max-Heap 中,父节点总是大于其任何子节点

所以你是对的!x.key 比 y.key 大,因为根据最大堆属性,父节点大于其子节点是正确的。

于 2020-06-06T19:26:40.753 回答