第3章排序答案讲解.docxVIP

  • 11
  • 0
  • 约1.18万字
  • 约 10页
  • 2023-08-07 发布于天津
  • 举报
第3章排序自测卷答案 姓名 班级 题号 一 二 三 四 五 总分 题分 24 18 36 8 14 100 得分 一、 填空题(每空1分,共24分) 大多数排序算法都有两个基本的操作: 比较(两个关键字的大小) 和 移动(记录或改变指向记录的指 针) 。 在对一组记录(54, 38, 96, 23, 15, 72, 60,45, 83)进行直接插入排序时,当把第7个记录60插入到有 序表时,为寻找插入位置至少需比较3 次。(可约定为,从后向前比较) 在插入和选择排序中,若初始数据基本正序,则选用插入排序(到尾部):若初始数据基本反序,则选 用选择排序 。 在堆排序和快速排序中,若初始记录接近正序或反序,则选用堆排序;若初始记录基本无序,则最好选 用快谏排序 。 对于n个记录的集合进行冒泡排序,在最坏的情况下所需要的时间是_O(n2)―。若对其进行快速排序,在 最坏的情况下所需要的时间是一 O(n2)。 对于n个记录的集合进行归并排序,所需要的平均时间是 O(nlog2n),所需要的附加空间是 O(nL—。 7【计研题2000】对于n个记录的表进行2路归并排序,整个归并排序需进行Jog2n —趟(遍),共计移 动 n log2n _次记录。 (即移动到新表中的总次数!共log2n趟,每趟都要移动n个元素) 设要将序列(Q, H, C, Y, P, A, M, S, R, D, F, X中的关键码按字母序的升序重新排列,则: 冒泡排序一趟扫描的结果是 H, C, Q, P, A, M, S, R, D, F, X ,Y ; 初始步长为4的希尔(shell)排序一趟的结果是 P, A, C, S, Q, D, F, X , R, H?M, Y ; 二路归并排序一趟扫描的结果是 H, Q, C, Y,A, P, M, S, D, R, F, X ; 快速排序一趟扫描的结果是 F, H, C, D, P, A, M, Q, R, S, Y X ; 堆排序初始建堆的结果是_A, D, C, R, F, Q, M, S, Y,P, H, X_ 在堆排序、快速排序和归并排序中, 若只从存储空间考虑,则应首先选取堆排序方法,其次选取快速排序方法,最后选取归并排序方法: 若只从排序结果的稳定性考虑,则应选取归并排序方法; 若只从平均情况下最快考虑,则应选取快速排序方法: 若只从最坏情况下最快并且要节省内存考虑,则应选取堆排序方法。 二、 单项选择题(每小题1分,共18分) (C ) 1.将5个不同的数据进行排序,至多需要比较 次。 A. 8B. 9C. 10D. 25 A. 8 B. 9 C. 10 D. 25 (C ) 2.排序方法中,从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将 其放入已排序序列的正确位置上的方法,称为 A.希尔排序 B.冒泡排序 C.插入排序 D.选择排序 (D ) 3.排序方法中,从未排序序列中挑选元素,并将其依次插入已排序序列(初始时为空)的一端的方 法,称为 A.希尔排序 B.归并排序 C.插入排序 D.选择排序 (C ) 4.对n个不同的排序码进行冒泡排序,在下列哪种情况下比较的次数最多。 A.从小到大排列好的 B.从大到小排列好的 C.元素无序 D.元素基本有序 (D ) 5.对n个不同的排序码进行冒泡排序,在元素无序的情况下比较的次数为 A. n+1 B. n C. n-1 D. n(n-1)/2 (前3个答案都太小了) (C ) 6.快速排序在下列哪种情况下最易发挥其长处。 A.被排序的数据中含有多个相同排序码 B.被排序的数据已基本有序 C.被排序的数据完全无序 D.被排序的数据中的最大值和最小值相差悬殊 (B ) 7.【计研题2001】对有n个记录的表作快速排序,在最坏情况下,算法的时间复杂度是 A. O(n) B. O(n2) C. O(nlog2n) D. O(n3) (C ) 8.若一组记录的排序码为(46, 79,56, 38, 40, 84 ),则利用快速排序的方法,以第一个记录为基准得 到的一次划分结果为 A. 38, 40, 46, 56, 79, 84 B. 40,38, 46,79, 56, 84 C. 40, 38,46, 56, 79, 84 D. 40, 38,46, 84, 56, 79 (AD ) 9【计研题2001】在最好情况下,下列排序算法中 排序算法所需比较关键字次数最少。 A.冒泡 B.归并 C—快速 D.直接插入 (仅n—1次!) (C ) 10.【计研题2001】置换选择排序的功能是。(置换选择排序=简单选择排序?) A.选出最大的元素 B.产生初始归并段 C.产生有序文件 D.置换某个记录 (A ) 11.将5个不同的数据进行排序,至

文档评论(0)

1亿VIP精品文档

相关文档