插完五个数之后堆顶是几
把 17、24、15、13、23 依次插进一个空的大顶堆。运行下面这段程序:
def push(h, x):
h.append(x)
i = len(h) - 1
while i > 0 and h[(i - 1) // 2] < h[i]:
p = (i - 1) // 2
h[p], h[i] = h[i], h[p]
i = p
h = []
for v in [17, 24, 15, 13, 23]:
push(h, v)
print(h[0])
全部评论