排序作业选择题(每题2分,共22分)。
1.若表R在排序前已按键值递增顺序排列,则( )算法的比较次数最少。
A.直接插入排序 B.快速排序 C.归并排序 D.选择排序2.对各种内部排序方法来说,( )。
A.快速排序时间性能最佳 B.归并排序是稳定的排序方法C.快速排序是一种选择排序 D.堆排序所用的辅助空间比较大3. 排序算法的稳定性是指( )。
A.经过排序之后,能使值相同的数据保持原顺序中的相对位置不变。
B.经过排序之后,能使值相同的数据保持原顺序中的绝对位置不变。
C.排序算法的性能与被排序元素的数量关系不大D.排序算法的性能与被排序元素的数量关系密切4.如下序列中,( )序列是大顶堆。
A. {4,5,3,2,1} B. {5,3,4,1,2} C. {1,2,3,4,5} D. {1,2,3,5,4}5.若将{3,2,5,4,1}排为升序,则实施快速排序一趟后的结果是( )(其中,枢轴记录取首记录)。
A. {1,2,3,4,5} B. {1,2,4,5,3} C. {1,3,5,4,2} D. {2,5,4,1,3}.若将{1,2,3,4,5,6,7,9,8}排为升序,则( )排序方法的“比较记录”次数最少。
A. 快速排序 B. 简单选择排序 C. 直接插入排序 D. 冒泡排序7.若将{5,4,3,2,1}排为升序,则( )排序方法的“移动记录”次数最多。
A. 快速排序 B. 冒泡排序C. 直接插入排序 D. 简单选择排序8.用简单选择排序将顺序表{2,3,1,3′,2′}排为升序,实施排序1趟后结果是{1,3,2,3′,2′},则排序3趟后的结果是( )。
A. {1,2,3,3′,2′} B. {1,2,2′,3,3′}C. {1,2′,2,3,3′} D. {1,2,2′,3′,3}9.下列排序算法中,( )排序在某趟结束后不一定选出一个元素放到其最终的位置上。
A.选择 B.冒泡 C.归并 D.堆10.下列排序算法中,稳定的排序算法是( )。
A.堆排序 B.直接插入排序 C.快速排序 D.希尔排序11.堆排序的时间复杂度是( )。
A.O(n*n) B.O(n*logn) C.O(n) D.O(logn)填空题(每空4分,共4分)。
对n个元素进行归并排序,空间复杂度为 。
综合题(共24分)。
1.(共12分)有一组待排序的关键字如下:(54,38,96,23,15,72,60,45,83)分别写出希尔排序(d=5)、快速排序、堆排序、归并排序第一趟升序排序后的结果(其中堆排序的第一趟指序列完成初始建堆、将堆顶元素置为最末位置后其余元素调整为堆的结果)(每个3分)。
希尔排序: 快速排序:堆排序:归并排序: 2.(共12分)已知数据序列为(12,5,9,20,6,31,24),对该项数据序列进行排序,分别写出直接插入排序、简单选择排序、快速排序、堆排序、二路归并排序及基数排序第一趟升序排序结果(其中堆排序的第一趟指序列完成初始建堆、将堆顶元素置为最末位置后其余元素调整为堆的结果)(每个2分)。
直接插入排序:简单选择排序:快速排序:堆排序:二路归并排序:基数排序:
1