题目
1、在待排序的记录集中,存在多个具有相同键值的记录,这些记录的相对次序仍然保持不变,称这种排序是稳定排序。( )
2、若数据元素序列 {11, 12, 13, 7, 8, 9, 23, 4, 5},是采用下列排序方法之一得到的第二趟排序后的结果,则该排序算法只能是( )。
A. 冒泡排序
B. 直接插入排序
C. 简单选择排序
D. 二路归并排序
3、设一组初始记录关键字序列为 {49, 38, 65, 97, 76, 13, 27, 50},则以 d = 4 为增量的一趟希尔排序结束后的结果为__________。
4、在对一组记录 {18, 6, 27, 12, 52, 15, 47, 29} 进行直接插入排序时,当把第 6 个记录 15 插入到有序表时,为寻找插入位置需比较________次。
5、直接插入排序算法在平均情况下的时间复杂度为__________,在最好情况下的时间复杂度为__________。
6、用直接插入排序对下面四个序列进行递增排序,元素比较次数最少的是( )。
A. 94, 32, 40, 90, 80, 46, 21, 69
B. 32, 40, 21, 46, 69, 94, 90, 80
C. 21, 32, 46, 40, 80, 69, 90, 94
D. 90, 69, 80, 46, 21, 32, 94, 40
7、从未排序序列中选择一个元素,该元素将未排序序列分成前后两个部分,前一部分中所有元素都小于等于所选元素;后一部分中所有元素都大于等于所选元素,而所选元素处在排序的最终位置,这种排序方法称作( )。
A. 插入排序
B. 希尔排序
C. 快速排序
D. 堆排序
8、已知待排序记录的关键字序列 {77, 71, 52, 22, 15, 30, 3},用冒泡排序法按从小到大顺序写出每趟排序的结果,直到排序结束。
9、用某种排序方法对关键字序列 {25, 84, 21, 47, 15, 27, 68, 35, 20} 进行排序时,序列的变化情况如下:
20, 15, 21, 25, 47, 27, 68, 35, 84
15, 20, 21, 25, 35, 27, 47, 68, 84
15, 20, 21, 25, 27, 35, 47, 68, 84
则所采用的排序方法是( )。
A. 选择排序
B. 希尔排序
C. 归并排序
D. 快速排序
10、给出一组关键字 {29, 18, 25, 47, 58, 12, 51, 10} 写出快速排序方法(第 1 个元素为枢轴)进行排序的每一趟排序。
答案
1、正确
2、B
3、49, 13, 27, 50, 76, 38, 65, 97
4、4
与 52, 27, 18, 12 比较
5、O (n²); O (n)
最好情况下,也就是序列中的所有元素已有序,只需比较而不用移动,此时时间复杂度为 O (n)。
6、C
C 选项已基本有序。
7、C
8、71, 52, 22, 15, 30, 3, 77
52, 22, 15, 30, 3, 71, 77
22, 15, 30, 3, 52, 71, 77
15, 22, 3, 30, 52, 71, 77
15, 3, 22, 30, 52, 71, 77
3, 15, 22, 30, 52, 71, 77
或者
3, 77, 71, 52, 22, 15, 30
3, 15, 77, 71, 52, 22, 30
3, 15, 22, 77, 71, 52, 30
3, 15, 22, 30, 77, 71, 52
3, 15, 22, 30, 52, 77, 71
3, 15, 22, 30, 52, 71, 77
9、D
10、10, 18, 25, 12, 29, 58, 51, 47
10, 18, 25, 12, 29, 47, 51, 58
10, 12, 18, 25, 29, 47, 51, 58