问题
单项选择题
设有5000个无序的元素,希望用最快的速度挑选出其中前50个最大的元素,最好选用______。
A.冒泡排序
B.快速排序
C.堆排序
D.基数排序
答案
参考答案:C
解析:
堆排序算法用到了以下事实:最大的元素位于堆顶处,若在输出堆项的最大值之后,使得剩余n-1个元素的序列重又建成一个堆,则得到n个元素中的次大值。如此反复执行50次,便能得到前50个最大的元素。
设有5000个无序的元素,希望用最快的速度挑选出其中前50个最大的元素,最好选用______。
A.冒泡排序
B.快速排序
C.堆排序
D.基数排序
参考答案:C
解析:
堆排序算法用到了以下事实:最大的元素位于堆顶处,若在输出堆项的最大值之后,使得剩余n-1个元素的序列重又建成一个堆,则得到n个元素中的次大值。如此反复执行50次,便能得到前50个最大的元素。