【考研类试卷】计算机专业基础综合数据结构(排序)历年真题试卷汇编6及答案解析.doc
《【考研类试卷】计算机专业基础综合数据结构(排序)历年真题试卷汇编6及答案解析.doc》由会员分享,可在线阅读,更多相关《【考研类试卷】计算机专业基础综合数据结构(排序)历年真题试卷汇编6及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、计算机专业基础综合数据结构(排序)历年真题试卷汇编 6 及答案解析(总分:108.00,做题时间:90 分钟)一、单项选择题(总题数:44,分数:88.00)1.某内部排序方法的稳定性是指_。【南京理工大学 1997 年】(分数:2.00)A.该排序算法不允许有相同的关键字记录B.该排序算法允许有相同的关键字记录C.平均时间为 O(nlogn)的排序方法D.以上都不对2.若要求尽可能快地对序列进行稳定的排序,则应选_。【北京邮电大学 2001 年】(分数:2.00)A.快速排序B.归并排序C.冒泡排序D.根排序3.下列排序方法中,_是稳定的排序方法。【北方交通大学 2001】(分数:2.00)
2、A.直接选择排序B.二分法插入排序C.希尔排序D.快速排序4.对有 n 个记录的表做直接插入排序,在最好情况下,需比较_次关键字。【华中科技大学 2006 年】(分数:2.00)A.n-1B.n+1C.n2D.n(n-1)25.对 n 个不同的数据利用冒泡法从小到大排序,在下列哪种情况下元素交换的次数最多_。【北京交通大学 2007 年】(分数:2.00)A.从大到小排列好的B.从小到大排列好的C.元素无序D.元素基本有序6.采用简单选择排序,比较次数与移动次数分别为_。【南京理工大学 2000 年】(分数:2.00)A.O(n),O(10gn)B.O(logn),O(n*n)C.O(n*n)
3、,O(n)D.O(nlogn),O(n)7.希尔排序属于_。【太原科技大学 2006 年】(分数:2.00)A.插入排序B.交换排序C.选择排序D.归并排序8.对序列15,9,7,8,20,一 1,4用希尔排序方法排序,经一趟后序列变为15,一1,4,8,20,9,7则该次采用的增量是_。【南京理工大学 1999 年】(分数:2.00)A.1B.4C.3D.29.有些排序算法在每趟排序过程中,都会有一个元素被放置到其最终位置上,下列算法不会出现此种情况的是_。【北京交通大学 2005 年】(分数:2.00)A.希尔排序B.堆排序C.冒泡排序D.快速排序10.从未排序序列中选择一个元素,该元素将
4、当前参加排序的那些元素分成前后两个部分,前一部分中所有元素都小于等于所选元素,后一部分中所有元素都大于等于所选元素,而所选元素处在排序的最终位置。这种排序法称为_。【北京航空航天大学 2005 年】(分数:2.00)A.插入排序法B.冒泡排序法C.希尔排序法D.快速排序法11.一组记录的关键码为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为_。【北京交通大学 2005 年】(分数:2.00)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,8
5、4,56,79)12.对下列 4 个序列,以第一个关键字为基础用快速排序算法进行排序,在第一趟过程中移动记录次数最多的是_。【电子科技大学 2007 年】(分数:2.00)A.92,96,100,110,42,35,30,88B.92,96,88,42,30,35,110,100C.100,96,92,35,30,110,88,42D.42,30,35,92,100,96,88,11013.快速排序方法在_情况下最不利于发挥其长处。【华南理工大学 2007 年】(分数:2.00)A.要排序的数据量太大B.要排序的数据中含有多个相同值C.要排序的数据个数为奇数D.要排序的数据已基本有序14.对
6、n 个元素的表做快速排序,最坏情况下,算法的时间复杂度为_。【华中科技大学 2006 年】(分数:2.00)A.O(log 2 n)B.O(nlog 2 n)C.O(n 2 )D.O(2 n )15.对以下关键字序列用快速排序算法进行排序,速度最慢的是_。【北京交通大学 2002 年】(分数:2.00)A.20,24,4,16,22,29B.24,22,29,16,20,4,8C.20,8,16,29,24,22,4D.4,8,16,20,24,2916.快速排序在最坏的情况下的时间复杂度与下面哪个算法的最坏情况下的时间复杂度相同_。【北京交通大学 2006 年】(分数:2.00)A.希尔排序
7、B.堆排序C.冒泡排序D.基数排序17.根据堆的定义,下面 4 个序列中,构成堆的是_。【广东工业大学 2002 年】(分数:2.00)A.77,67,32,17,27,47,22,12B.77,67,47,12,32,27,22,17C.77,47,67,32,17,27,22,12D.77,47,67,12,27,32,22,1718.有组数据(15,9,7,8,20,一 1,7,4),用堆排序的筛选方法建立的初始堆为_。【南京理工大学 1996 年】(分数:2.00)A.一 1,4,8,9,20,7,15,7B.一 1,7,15,7,4,8,20,9C.一 1,4,7,8,20,15,7
8、,9D.A,B,C 均不对。19.构建 n 个记录的初始堆,其时间复杂度为_。【华中科技大学 2006 年】(分数:2.00)A.O(n)B.O(n 2 )C.O(log 2 n)D.O(nlog 2 n)20.在对 n 个元素的序列进行排序时,堆排序所需要的附加存储空间是_。【西安电子科技大学 2001 年】(分数:2.00)A.O(log 2 n)B.O(1)C.O(n)D.O(nlog 2 n)21.对 n 个记录的文件进行堆排序,最坏情况下的执行时间是_。【北京交通大学 2001 年(分数:2.00)A.O(log 2 n)B.O(n)C.O(nlog 2 n)D.O(n 2 )22.
9、归并排序中,归并趟数的数量级是_。【南京理工大学 2000 年】(分数:2.00)A.O(n)B.O(log 2 n)C.O(nlog 2 n)D.O(n 2 )23.对具有 n 个元素的序列采用二路归并排序算法排序,算法的空间复杂度是_。【北京航空航天大学2007 年】(分数:2.00)A.O(n)B.O(2n)C.O(n 2 )D.O(log 2 n)24.若需在 O(nlog 2 n)的时间内完成对数组的排序,且要求排序是:稳定的,则可选择的排序方法是_。【北京交通大学 2004 年】【太原科技大学 2007 年】(分数:2.00)A.快速排序B.堆排序C.归并排序D.直接插入排序25.
10、排序趟数与序列的原始状态有关的排序方法是_排序法。【北京航空航天大学 1999 年】(分数:2.00)A.插入B.选择C.冒泡D.基数26.下列排序方法中,_在待排序的数据为有序时,花费时间反而最多。【华中科技大学 2007 年】(分数:2.00)A.快速排序B.插入排序C.堆排序D.冒泡排序27.当待排序序列基本有序时,下列方法中_最好。【北京邮电大学 2005 年】(分数:2.00)A.直接插入排序B.快速排序C.堆排序D.归并排序28.下面给出的 4 种排序方法中,排序过程中的比较次数与序列初始状态无关的是_。【北京航空航天大学 2000 年】(分数:2.00)A.选择排序法B.插入排序
11、法C.快速排序法D.堆积排序法29.用直接插入排序方法对下面 4 个序列进行排序(由小到大),元素比较次数最少的是_。【北方交通大学 2001 年】(分数:2.00)A.94,32,40,90,80,46,21,69B.32,40,21,46,69,94,90,80C.21,32,46,40,80,69,90,94D.90,69,80,46,21,32,94,4030.数据序列(2,1,4,9,8,10,6,20)只能是下列排序算法中的_的两趟排序后的结果。【合肥工业大学 2000 年】(分数:2.00)A.快速排序B.冒泡排序C.选择排序D.插入排序31.对一组数据(84,47,25,15,
12、21)排序,数据的排列次序在排序的过程中的变化为:(1)84,47,25,15,21(2)15,47,25,84,21(3)15,21,25,84,47(4)15,21,25,47,84 则采用的排序是_。【南京理工大学 1997 年】(分数:2.00)A.选择B.冒泡C.快速D.插入32.下列排序算法中,_算法可能会出现下面情况:在最后一趟开始之前,所有元素都不在其最终的位置上。【南开大学 2000 年】【西北大学 2001 年】(分数:2.00)A.堆排序B.冒泡排序C.快速排序D.插入排序33.用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,
13、序列的变化情况如下: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 则所采用的排序方法是_。【北京交通大学 2003 年】(分数:2.00)A.选择排序B.希尔排序C.归并排序D.快速排序34.若序列的原始状态为 1,2,3,4,5,10,6,7,8,9,要想使得排序过程中元素比较次数最少,则应该采用_方法。【北京航空航天大学 2004 年】(分数:2.00)A.插入排序B.选择排序C.希尔排序D.冒泡排序35.下列排序算法中_排序在一趟结束后不一定能选出一个元素放在其最终位置上。
14、【南京理工大学2001 年】【哈尔滨工业大学 2001 年】(分数:2.00)A.选择B.冒泡C.归并D.堆36.在下面的排序方法中,辅助空间为 O(n)的是_。【南京理工大学 1999 年】(分数:2.00)A.希尔排序B.堆排序C.选择排序D.归并排序37.下列排序算法中,占用辅助空间最多的是_。【厦门大学 2002 年】(分数:2.00)A.归并排序B.快速排序C.希尔排序D.堆排序38.对初始状态为递增序列的表按递增顺序排序,最省时间的是_算法,最费时间的是_算法。【南开大学 2000 年】(分数:2.00)A.堆排序B.快速排序C.插入排序D.归并排序39.就平均性能而言,目前最好的
15、内部排序方法是_排序法。【西安电子科技大学 1998 年】(分数:2.00)A.冒泡B.希尔插入C.交换D.快速40.如果只想得到 1000 个元素组成的序列中第 lO 个最小元素之前的部分排序的序列,用_方法最快。【北京交通大学 2003 年】(分数:2.00)A.冒泡排序B.快速排列C.希尔排序D.堆排序41.基于比较方法的 n 个数据的内部排序。最坏情况下的时间复杂度能达到的最好下界是_。【南京理工大学 1996 年】(分数:2.00)A.O(nlog 2 n)B.O(log 2 n)C.O(n)D.O(n 2 )42.基于比较的排序算法时间复杂度最好的是 O(_)。【北京邮电大学 20
16、07 年】(分数:2.00)A.log 2 nB.nC.nlog 2 nD.n 243.在最好情况下,对 n 个记录的顺序表作_排序,其时间复杂度为 O(n)。【华中科技大学 2006 年】(分数:2.00)A.归并排序B.快速排序C.堆排序D.直接插入排序44.对各种内部排序方法来说,_。【华南理工大学 2006 年】(分数:2.00)A.快速排序时间性能最佳B.基数排序和归并排序是稳定的排序方法C.快速排序是一种选择排序D.堆排序所用的辅助空间比较大二、综合题(总题数:6,分数:20.00)45.冒泡排序算法是把大的元素向上移(气泡的上浮),也可以把小的元素向下移(气泡的下沉)请给出上浮和
17、下沉过程交替的冒泡排序算法。【吉林大学 2001 年】(分数:2.00)_46.有 50 个学生的记录(每个学生的记录包括学号和成绩),组成记录数组,按成绩由高到低的次序输出(每行 10 个记录)。排序方法采用选择排序。【北京师范大学 1999 年】(分数:2.00)_有一种简单的排序算法,叫做计数排序(CountSorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键码互不相同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表中有多少个记录的关键码比该记录的关键码小,假设针对某一个记录,统计出的计数值
18、为 c,那么,这个记录在新的有序表中的合适的存放位置即为C。(分数:8.00)(1).给出适用于计数排序的数据表定义。(分数:2.00)_(2).使用 C 语言编写实现计数排序的算法。(分数:2.00)_(3).对于有 n 个记录的表,关键码比较次数是多少?(分数:2.00)_(4).与简单选择排序相比较,这种方法是否更好?为什么?【清华大学 2000 年】(分数:2.00)_47.设有一个数组中存放了一个无序的关键序列 K 1 、K 2 、K n 。现要求将 Kn 放在将元素排序后的正确位置上,试编写实现该功能的算法,要求比较关键字的次数不超过 n。【南京航空航天大学 1997 年】(分数:
19、2.00)_已知关键字序列(K 1 ,K 2 ,K 3 ,K n-1 )是大根堆。(分数:4.00)(1).试写出一算法将(K 1 ,K 2 ,K 3 ,K n-1 ,K n )调整为大根堆。(分数:2.00)_(2).利用 1)的算法写一个建大根堆的算法。【中科院软件所 1999 年】(分数:2.00)_48.设有顺序放置的 n 个桶,每个桶中装有一粒砾石,每粒砾石的颜色是红、白、蓝之一。要求重新安排这些砾石,使得所有红色砾石在前,所有白色砾石居中,所有蓝色砾石居后,重新安排时对每粒砾石的颜色只能看一次,并且只允许交换操作来调整砾石的位置。【上海大学 1999 年】(分数:2.00)_计算机
20、专业基础综合数据结构(排序)历年真题试卷汇编 6 答案解析(总分:108.00,做题时间:90 分钟)一、单项选择题(总题数:44,分数:88.00)1.某内部排序方法的稳定性是指_。【南京理工大学 1997 年】(分数:2.00)A.该排序算法不允许有相同的关键字记录B.该排序算法允许有相同的关键字记录C.平均时间为 O(nlogn)的排序方法D.以上都不对 解析:解析:考查排序算法的稳定性。如果排序前后有相同关键字的记录的前后顺序不变,则称此排序是稳定的。2.若要求尽可能快地对序列进行稳定的排序,则应选_。【北京邮电大学 2001 年】(分数:2.00)A.快速排序B.归并排序 C.冒泡排
21、序D.根排序解析:解析:考查排序算法的稳定性及算法效率。归并排序和冒泡排序是稳定的,冒泡排序的平均时间复杂度为 O(n 2 ),归并排序的平均时间复杂度为 O(nlog 2 n)。3.下列排序方法中,_是稳定的排序方法。【北方交通大学 2001】(分数:2.00)A.直接选择排序B.二分法插入排序 C.希尔排序D.快速排序解析:解析:考查稳定的排序算法有哪些。插入排序、冒泡排序、二路归并排序、基数排序是稳定的排序算法,选择排序、希尔排序、快速排序、堆排序属于不稳定排序。4.对有 n 个记录的表做直接插入排序,在最好情况下,需比较_次关键字。【华中科技大学 2006 年】(分数:2.00)A.n
22、-1 B.n+1C.n2D.n(n-1)2解析:解析:考查最好情况下直接插入排序比较次数。在最好的情况下,即初始序列有序列,则每次循环只需与前一个元素比较 1 次,且不需要移动,总的比较次数为 n1。5.对 n 个不同的数据利用冒泡法从小到大排序,在下列哪种情况下元素交换的次数最多_。【北京交通大学 2007 年】(分数:2.00)A.从大到小排列好的 B.从小到大排列好的C.元素无序D.元素基本有序解析:解析:考查冒泡排序最差的情况。一般情况下冒泡排序最多进行 n1 次冒泡。若初始序列为逆序时,则需进行 n 一 1 次冒泡,并且需要交换次数最多。6.采用简单选择排序,比较次数与移动次数分别为
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 考研 试卷 计算机专业 基础 综合 数据结构 排序 历年 汇编 答案 解析 DOC
