三元最大堆类似于二元最大堆,但节点有 3 个子节点,而不是 2 个子节点。一个三元堆可以用数组表示如下:根存放在第一个位置a[0],下一层的节点,从左到右,存放从a[1]到a[3 ]。树的第二层从左到右的节点从 [4] 位置开始存储。通过将 x 放在位置 a[n] 并将其向上推到树以满足堆属性,可以将项 x 插入包含 n 个项的 3 元堆中。
以下哪一项是表示 3 进制最大堆的数组中的有效元素序列?
(一) 1, 3, 5, 6, 8, 9
(B) 9, 6, 3, 1, 8, 5
(C) 9, 3, 6, 8, 5, 1
(D) 9, 5, 6, 8, 3, 1答案: (D)
说明:可以从给定选项 (D) 的序列构造以下 3-ary Max Heap
9
/ | \
/ | \
5 6 8
/ |
/ |
3 1
这个问题的测验