第十章-排序-归并排序与基数排序-计算机17级(期末复习带详解版)

解析在下面

2-4,10,23题目写的有点问题,应该是104,105

解析:

p1-1:

注意哦,人家问的不是时间复杂度,而是归并趟数的数量级,应该是O(logN) 

x2-2:

空间复杂度就是O(N),因为需要开一个临时数组

x2-4:

就一位,个数也不多,直接桶排序最好,速度是线性的

x2-5:

用排除法很好做。。。至于为啥是快排我也不知道。。。

x2-6:

对于10TB的海量数据,数据不可能一次全部载入内存,传统的排序方法就不适用了,需要用到外排序的方法。外排序采用分治思想,即先对数据分块,对块内数据进行排序,然后采用归并排序的思想进行排序,得到数据的一个有序序列。

x2-7:

归并一般用于外排序,如果用于内排,而不用插入 这种简单排序,

可能的原因也就只有c了。

a肯定错

b插入排序是不占空间的

x2-8:

这个很难

插入排序、选择排序、起泡排序原本时间复杂度是O(n2),更换为链式存储后的时间复杂度还是O(n2)。希尔排序和堆排序都利用了顺序存储的随机访问特性(堆排序的这个特性体现在:取出最大堆的根节点后,更新堆的过程),而链式存储不支持这种性质,所以时间复杂度会增加,因此选D。

x2-9:

因为堆排序就是每次删除最大堆,并把它放在最后,其实这个过程有点像冒泡我觉得

x2-10:

同2-4:

x2-11,12,13:

第一步:以34为主元

第二部,左边递归排序

x2-15:

这个很明显就是插入排序的特点

x2-16:

这个题很好!!!

考查各排序算法的特点。
解答本题要对不同排序算法的特点极为清楚。
对于起泡排序和选择排序而言,每一趟过后都能确定一个元素的最终位置,而由题目中所说,前两个元素和后两个元素均不是最小或最大的两个元素并按序排列。
(二路)归并排序,第一趟排序结束都可以得到若干个有序子序列,而此时的序列中并没有两两元素有序排列。
插入排序在每趟排序结束后能保证前面的若干元素是有序的,而此时第二趟排序后,序列的前三个元素是有序的,符合其特点。故正确答案是B。

x2-17:

和上一题差不多,也可以用排除法分析,只能是快排

x2-19:

看表

x2-21:

归并排序用于都是O(NlogN)

x2-22:

看图

x2-23:

这个没有桶排序,但是只有一位,那就用它的升级版基数排序即可

后面的不用看了

 

 

 

 

 

 

1-1

对N个记录进行归并排序,归并趟数的数量级是O(NlogN)。 (2分)

T         F

2-1

对N个记录进行归并排序,归并趟数的数量级是: (1分)

  1. O(logN)
  2. O(N)
  3. O(NlogN)
  4. O(N​2​​)

作者: DS课程组

单位: 浙江大学

2-2

对N个记录进行归并排序,空间复杂度为: (1分)

  1. O(logN)
  2. O(N)
  3. O(NlogN)
  4. O(N​2​​)

作者: DS课程组

单位: 浙江大学

2-3

给出关键字序列{ 431, 56, 57, 46, 28, 7, 331, 33, 24, 63 },下面哪个选择是按次位优先(LSD)链式基数排序进行了一趟分配和收集的结果? (2分)

  1. →331→431→33→63→24→56→46→57→7→28
  2. →56→28→431→331→33→24→46→57→63→7
  3. →431→331→33→63→24→56→46→57→7→28
  4. →57→46→28→7→33→24→63→56→431→331

作者: DS课程组

单位: 浙江大学

2-4

输入10​5​​个只有一位数字的整数,可以用O(N)复杂度将其排序的算法是:(1分)

  1. 快速排序
  2. 插入排序
  3. 桶排序
  4. 希尔排序

作者: 陈越

单位: 浙江大学

2-5

数据序列{ 3, 1, 4, 11, 9, 16, 7, 28 }只能是下列哪种排序算法的两趟排序结果?(2分)

  1. 冒泡排序
  2. 快速排序
  3. 插入排序
  4. 堆排序

作者: 陈越

单位: 浙江大学

2-6

对10TB的数据文件进行排序,应使用的方法是:(1分)

  1. 希尔排序
  2. 堆排序
  3. 归并排序
  4. 快速排序

作者: DS课程组

单位: 浙江大学

2-7

在内部排序时,若选择了归并排序而没有选择插入排序,则可能的理由是:(2分)

  1. 归并排序的程序代码更短
  2. 归并排序占用的空间更少
  3. 归并排序的运行效率更高
  1. 仅 2
  2. 仅 3
  3. 仅 1、2
  4. 仅 1、3

作者: 考研试卷

单位: 浙江大学

2-8

下列排序方法中,若将顺序村吃更换为链式存储,则算法的时间效率会降低的是:(2分)

1.插入排序;2.选择排序;3.起泡排序;4.希尔排序;5.堆排序

  1. 仅1、2
  2. 仅2、3
  3. 仅3、4
  4. 仅4、5

作者: 考研试卷

单位: 浙江大学

2-9

{ 12,9,11,8,7,4,5,13,23 }是下列哪种方法第二趟排序后的结果? (2分)

  1. 归并排序
  2. 堆排序
  3. 插入排序
  4. 基数排序

作者: DS课程组

单位: 浙江大学

2-10

输入10​4​​个只有一位数字的整数,可以用O(N)复杂度将其排序的算法是:(1分)

  1. 桶排序
  2. 快速排序
  3. 插入排序
  4. 希尔排序

作者: 陈越

单位: 浙江大学

2-11

将序列{ 2, 12, 16, 88, 5, 10, 34 }排序。若前2趟排序的结果如下:

  • 第1趟排序后:2, 12, 16, 10, 5, 34, 88
  • 第2趟排序后:2, 5, 10, 12, 16, 34, 88

则可能的排序算法是:(2分)

  1. 冒泡排序
  2. 快速排序
  3. 归并排序
  4. 插入排序

作者: 陈越

单位: 浙江大学

2-12

将序列{ 2, 12, 16, 88, 5, 10, 34 }排序。若前2趟排序的结果如下:

  • 第1趟排序后:2, 12, 16, 10, 5, 34, 88
  • 第2趟排序后:2, 5, 10, 12, 16, 34, 88

则可能的排序算法是:(2分)

  1. 冒泡排序
  2. 归并排序
  3. 插入排序
  4. 快速排序

作者: 陈越

单位: 浙江大学

2-13

将序列{ 2, 12, 16, 88, 5, 10, 34 }排序。若前2趟排序的结果如下:

  • 第1趟排序后:2, 12, 16, 10, 5, 34, 88
  • 第2趟排序后:2, 5, 10, 12, 16, 34, 88

则可能的排序算法是:(2分)

  1. 冒泡排序
  2. 归并排序
  3. 快速排序
  4. 插入排序

作者: 陈越

单位: 浙江大学

2-14

在对N个元素进行排序时,基于比较的算法中,其“最坏时间复杂度”中最好的是: (1分)

  1. O(logN)
  2. O(N)
  3. O(NlogN)
  4. O(N​2​​)

作者: DS课程组

单位: 浙江大学

2-15

下列排序算法中,哪种算法可能出现:在最后一趟开始之前,所有的元素都不在其最终的位置上?(设待排元素个数N>2) (2分)

  1. 冒泡排序
  2. 插入排序
  3. 堆排序
  4. 快速排序

作者: DS课程组

单位: 浙江大学

2-16

若数据元素序列{ 11,12,13,7,8,9,23,4,5 }是采用下列排序方法之一得到的第二趟排序后的结果,则该排序算法只能是: (2分)

  1. 冒泡排序
  2. 选择排序
  3. 插入排序
  4. 归并排序

作者: DS课程组

单位: 浙江大学

2-17

数据序列{ 3,2,4,9,8,11,6,20 }只能是下列哪种排序算法的两趟排序结果? (2分)

  1. 冒泡排序
  2. 选择排序
  3. 插入排序
  4. 快速排序

作者: DS课程组

单位: 浙江大学

2-18

对一组数据{ 2,12,16,88,5,10 }进行排序,若前三趟排序结果如下: 第一趟排序结果:2,12,16,5,10,88 第二趟排序结果:2,12,5,10,16,88 第三趟排序结果:2,5,10,12,16,88 则采用的排序方法可能是: (2分)

  1. 冒泡排序
  2. 希尔排序
  3. 归并排序
  4. 基数排序

作者: DS课程组

单位: 浙江大学

2-19

就排序算法所用的辅助空间而言,堆排序、快速排序、归并排序的关系是: (1分)

  1. 堆排序 < 归并排序 < 快速排序
  2. 堆排序 > 归并排序 > 快速排序
  3. 堆排序 < 快速排序 < 归并排序
  4. 堆排序 > 快速排序 > 归并排序

作者: DS课程组

单位: 浙江大学

2-20

下面四种排序算法中,稳定的算法是: (1分)

  1. 堆排序
  2. 希尔排序
  3. 归并排序
  4. 快速排序

作者: DS课程组

单位: 浙江大学

2-21

在基于比较的排序算法中,哪种算法的最坏情况下的时间复杂度不高于O(NlogN)? (1分)

  1. 冒泡排序
  2. 归并排序
  3. 希尔排序
  4. 快速排序

作者: DS课程组

单位: 浙江大学

2-22

下列排序算法中,时间复杂度不受数据初始状态影响,恒为O(NlogN)的是: (1分)

  1. 冒泡排序
  2. 直接选择排序
  3. 堆排序
  4. 快速排序

作者: DS课程组

单位: 浙江大学

2-23

输入10​5​​个只有一位数字的整数,可以用O(N)复杂度将其排序的算法是: (1分)

  1. 快速排序
  2. 插入排序
  3. 希尔排序
  4. 基数排序

作者: DS课程组

单位: 浙江大学

2-24

排序方法中,从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置的方法称为: (1分)

  1. 插入排序
  2. 选择排序
  3. 快速排序
  4. 归并排序

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 6
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值