单选题 设有5000个无序的元素,希望用最快的速度挑选出其中前50个最大的元素,最好选用______。

【正确答案】 C
【答案解析】[解析]
堆排序算法用到了以下事实:最大的元素位于堆顶处,若在输出堆项的最大值之后,使得剩余n-1个元素的序列重又建成一个堆,则得到n个元素中的次大值。如此反复执行50次,便能得到前50个最大的元素。