问题 单项选择题

设有关键码序列(q,g,m,z,a,n,p,x,h),下面哪一个序列是从上述序列出发建堆的结果( )

A.a,g,h,m,n,p,q,x,z

B.a,S,m,h,q,n,p,x,z

C.g,m,q,a,n,p,x,h,z

D.h,g,m,p,a,n,q,x,z

答案

参考答案:B

解析: 堆的定义是对每个层次的树(子树)都存在双亲节点小于(大于)其子女节点。因此要么是小根堆,要么是大根堆,小根堆堆顶元素肯定是a,大根堆堆顶元素肯定是z,因此首先可以排除C和D选项。对A、B如果是堆,肯定是小根堆。再根据建初堆后,进行筛运算的结果可得应为B。

单项选择题
单项选择题