第 11 题
对一组数据(2,12,16,88,5,10)进行排序,若前三趟排序结果如下:
第 一 趟排序结果:2,12,16,5,10,88
第二趟排序结果:2,12,5,10,16,88
第三趟排序结果: 2,5,10,12,16, 88
则采用的排序方法可能是()。
A. 起泡排序 B. 希尔排序 C. 归并排序 D. 基数排序
[tag_link]
正确答案:A
本题考查 内部排序 的特征,题中所给的三趟排序过程中,每一趟排序是从前往后依次比较,使最大值“沉底”,符合冒泡排序的特点。
看第一趟可知仅有 88 被移到最后。
如果是希尔排序,则 12,88,10 应变为 10,12,88。
因此排除希尔排序。
如果是归并排序,则长度为 2 的子序列是有序的。
因此可排除归并排序。
如果是基数排序,则 16,5,10 应变为 10,5,16。
因此排除基数排序。
提示:对于此类题,先看备选项的排序算法有什么特征,再看题目中的排序过程是否符合这一特征,从而得出答案。
一般先从选项中的简单排序方法(插入排序、起泡排序、选择排序)开始判断,若简单排序方法不符合,再判断排序方法(希尔排序、快速排序、堆排序、归并排序)。