数据结构1800试题-第10章 排序 下载本文

我下vip免费资源网 www.woxia.net 第

10章 排序

一、选择题

1.某内排序方法的稳定性是指( )。 【南京理工大学 1997 一、10(2分)】

A.该排序算法不允许有相同的关键字记录 B.该排序算法允许有相同的关键字记录

C.平均时间为0(n log n)的排序方法 D.以上都不对 2.下面给出的四种排序法中( )排序法是不稳定性排序法。【北京航空航天大学 1999 一、10 (2分)】

A. 插入 B. 冒泡 C. 二路归并 D. 堆积 3.下列排序算法中,其中( )是稳定的。 【福州大学 1998 一、3 (2分)】

A. 堆排序,冒泡排序 B. 快速排序,堆排序 C. 直接选择排序,归并排序 D. 归并排序,冒泡排序

4.稳定的排序方法是( ) 【北方交通大学 2000 二、3(2分)】

A.直接插入排序和快速排序 B.折半插入排序和起泡排序 C.简单选择排序和四路归并排序 D.树形选择排序和shell排序

5.下列排序方法中,哪一个是稳定的排序方法?( ) 【北方交通大学 2001 一、8(2分)】

A.直接选择排序 B.二分法插入排序 C.希尔排序 D.快速排序 6.若要求尽可能快地对序列进行稳定的排序,则应选(A.快速排序 B.归并排序 C.冒泡排序)。

【北京邮电大学 2001 一、5(2分)】

7.如果待排序序列中两个数据元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。( )就是不稳定的排序方法。【清华大学 1998 一、3 (2分)】

A.起泡排序 B.归并排序 C.Shell排序 D.直接插入排序 E.简单选择排序

8.若要求排序是稳定的,且关键字为实数,则在下列排序方法中应选( )排序为宜。

A.直接插入 B.直接选择 C.堆 D.快速 E.基数 【中科院计算所 2000 一、5(2分)】

9.若需在O(nlog2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方

法是( )。

A. 快速排序 B. 堆排序 C. 归并排序 D. 直接插入排序 【中国科技大学 1998 二、4(2分)】 【中科院计算所 1998 二、4(2分)】 10.下面的排序算法中,不稳定的是( ) 【北京工业大学 1999 一、2 (2分)】 A.起泡排序 B.折半插入排序 C.简单选择排序 D.希尔排序 E.基数排序 F.堆排序。

11.下列内部排序算法中: 【北京工业大学 2000 一、1 (10分 每问2分)】

A.快速排序 B.直接插入排序 C. 二路归并排序 D. 简单选择排序 E. 起泡排序 F. 堆排序

(1) 其比较次数与序列初态无关的算法是( ) (2)不稳定的排序算法是( ) (3)在初始序列已基本有序(除去n个元素中的某k个元素后即呈有序,k<

(4)排序的平均时间复杂度为O(n?logn)的算法是( )为O(n?n)的算法是( )

我下vip免费资源网 www.woxia.net 12.排序趟数与序列的原始状态有关的排序方法是( )排序法。【北京航空航天大学 1999 一、9(2分)】

A.插入 B. 选择 C. 冒泡 D. 快速

13.下面给出的四种排序方法中,排序过程中的比较次数与排序方法无关的是。( )

A.选择排序法 B. 插入排序法 C. 快速排序法 D. 堆积排序法 【北京航空航天大学 2000 一、10(2分)】

14.对下列四种排序方法,在排序中关键字比较次数同记录初始排列无关的是( )。

A.直接插入 B. 二分法插入 C. 快速排序 D. 归并排序 【南京理工大学 2000 一、7 (1.5分)】 15.在下列排序算法中,哪一个算法的时间复杂度与初始排序无关( )。【北京理工大学 2001 六、4 (2)】

A. 直接插入排序 B. 气泡排序 C. 快速排序 D. 直接选择排序 16.比较次数与排序的初始状态无关的排序方法是( )。【北方交通大学 2000 二、2(2分)】

A.直接插入排序 B.起泡排序 C.快速排序 D.简单选择排序 17.数据序列(8,9,10,4,5,6,20,1,2)只能是下列排序算法中的( )的两趟排序后的结果。

A.选择排序 B.冒泡排序 C.插入排序 D.堆排序 【合肥工业大学 1999 一、3 (2分)】

18.数据序列(2,1,4,9,8,10,6,20)只能是下列排序算法中的( )的两趟排序后

的结果。

A. 快速排序 B. 冒泡排序 C. 选择排序 D. 插入排序 【合肥工业大学 2000 一、3 (2分)】

19.对一组数据(84,47,25,15,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 (2分)】

A. 选择 B. 冒泡 C. 快速 D. 插入

20.对序列{15,9,7,8,20,-1,4}进行排序,进行一趟后数据的排列变为{4,9,-1,8,20,7,15};则采用的是( )排序。【南京理工大学 1998 一、8(2分)】

A. 选择 B. 快速 C. 希尔 D. 冒泡

21.若上题的数据经一趟排序后的排列为{9,15,7,8,20,-1,4},则采用的是( )排序。

A.选择 B. 堆 C. 直接插入 D. 冒泡 【南京理工大学 1998 一、9(2分)】

22.下列排序算法中( )不能保证每趟排序至少能将一个元素放到其最终的位置上。

A.快速排序 B. shell排序 C. 堆排序 D.冒泡排序 【合肥工业大学 2001 一、3(2分)】

23.下列排序算法中( )排序在一趟结束后不一定能选出一个元素放在其最终位置上。

A. 选择 B. 冒泡 C. 归并 D. 堆 【南京理工大学 2001 一、7(1.5分)】【哈尔滨工业大学 2001 二、4(2分)】 24.下列序列中,( )是执行第一趟快速排序后所得的序列。 【福州大学 1998 一、9 (2分)】

A. [68,11,18,69] [23,93,73] B. [68,11,69,23] [18,93,73]

我下vip免费资源网 www.woxia.net C. [93,73] [68,11,69,23,18] D. [68,11,69,23,18] [93,73] 25.有一组数据(15,9,7,8,20,-1,7,4) 用快速排序的划分方法进行一趟划分后数据的排序为 ( )(按递增序)。 【南京理工大学 1996 一、4 (2分)】 A.下面的B,C,D都不对。 B.9,7,8,4,-1,7,15,20 C.20,15,8,9,7,-1,4,7 D. 9,4,7,8,7,-1,15,20 26.一组记录的关键码为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为( )。 【燕山大学 2001 一、4(2分)】

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) 27. 在下面的排序方法中,辅助空间为O(n)的是( ) 。【南京理工大学 1999 一、17(1分)】

A.希尔排序 B. 堆排序 C. 选择排序 D. 归并排序 28.下列排序算法中,在待排序数据已有序时,花费时间反而最多的是( )排序。 A. 冒泡 B. 希尔 C. 快速 D. 堆 【南京理工大学 2001 一、12 (1.5分)】 29.下列排序算法中,在每一趟都能选出一个元素放到其最终位置上,并且其时间性能受数据初始特性影响的是:( )。

A. 直接插入排序 B. 快速排序 C. 直接选择排序 D. 堆排序

30. 对初始状态为递增序列的表按递增顺序排序,最省时间的是( )算法,最费时间的

是( )算法。

A. 堆排序 B. 快速排序 C. 插入排序 D. 归并排序 【南开大学 2000 一、5】

31. 就平均性能而言,目前最好的内排序方法是( )排序法。【西安电子科技大学 1998 一、9 (2分)】

A. 冒泡 B. 希尔插入 C. 交换 D. 快速

32.如果只想得到1000个元素组成的序列中第5个最小元素之前的部分排序的序列,用

( )方法最快。

A.起泡排序 B.快速排列 C.Shell排序 D.堆排序 E.简单选择排序 【清华大学 1998 一、2 (2分)】 类似本题的另外叙述有:

(1)设有5000个无序的元素,希望用最快的速度挑选出其中前十个最大的元素,在以下的排序方法中( )最好?为什么? 【山东工业大学 1995 二、4 (3分)】

A.快速排序 B.堆排序 C.归并排序 D.基数排序 E.SHELL排序

(2)数据表中有10000个元素,如果仅要求求出其中最大的10个元素,则采用( )算法最节省时间。

A. 堆排序 B. 希尔排序 C. 快速排序 D. 直接选择排序 【北京理工大学 2000 一、5 (2分)】

(3)设有1000个无序的元素,希望用最快的速度挑选出其中前十个最大的元素,在以下的排序方法中采用哪一种最好? ( ) 【东北大学 1999 一、5 (3分)】

A. 快速排序 B. 归并排序 C. 堆排序 D.基数排序 E.shell排序

33.在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是( )

A.直接插入排序 B.冒泡排序 C.简单选择排序 【山东工业大学 1995 二、1 (2分)】

类似本题的另外叙述有:

(1)在文件\局部有序\或文件长度较小的情况下,最佳内部排序的方法是( )。

我下vip免费资源网 www.woxia.net A. 直接插入排序 B. 冒泡排序 C. 简单选择排序 D. 快速排序 【山东大学 2001 二、 2 (1分)】

(2)在待排序的元素序列基本有序的前提下,效率最高的排序方法是( )。 【武汉大学 2000 二、6】

A.插入排序 B. 选择排序 C. 快速排序 D. 归并排序 34.下列排序算法中,( )算法可能会出现下面情况:在最后一趟开始之前,所有元素

都不在其最终的位置上。【南开大学 2000 一、4】 【西北大学 2001 二、1】 A. 堆排序 B. 冒泡排序 C. 快速排序 D. 插入排序 35. 下列排序算法中,占用辅助空间最多的是:( ) 【厦门大学 2002 五、2 (8分)】

A. 归并排序 B. 快速排序 C. 希尔排序 D. 堆排序 36.从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放在已排序序列的合适位置,该排序方法称为( )排序法。【北京航空航天大学 1999 一、8(2分)】

A. 插入 B. 选择 C. 希尔 D. 二路归并

37. 在排序算法中,每次从未排序的记录中挑出最小(或最大)关键码字的记录,加入到已排序记录的末尾,该排序方法是( )。【中山大学 1999 一、11】 A. 选择 B. 冒泡 C. 插入 D. 堆 38.用直接插入排序方法对下面四个序列进行排序(由小到大),元素比较次数最少的是( )。

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 【北方交通大学 2001 一、15 (2分)】

39.直接插入排序在最好情况下的时间复杂度为( )【北京邮电大学 1999 一、5 (2分)】

2

A. O(logn) B. O(n) C. O(n*logn) D. O(n) 40. 若用冒泡排序方法对序列{10,14,26,29,41,52}从大到小排序,需进行 ( )次比较。

A. 3 B. 10 C. 15 D. 25 【南京理工大学 1999 一、11(4分)】

类似本题的另外叙述有:

(1)若用冒泡排序对关键字序列{18,16,14,12,10,8},进行从小到大的排序,所需进行的关键字比较总次数是( ) 【北京工商大学 2001 一、4(3分)】

A. 10 B. 15 C. 21 D. 34 41. 采用简单选择排序,比较次数与移动次数分别为( )。【南京理工大学 2000 一、18(1.5分)】 A. O(n),O(logn) B. O(logn),0(n*n) C. 0(n*n),0(n) D. 0(nlogn),0(n) 42. 对序列{15,9,7,8,20,-1,4,} 用希尔排序方法排序,经一趟后序列变为{15,-l,4,8,20,9,7}则该次采用的增量是 ( ) 【南京理工大学 1999 一、15(1分)】

A. l B. 4 C. 3 D. 2 43.对下列关键字序列用快速排序法进行排序时,速度最快的情形是( )。

A. {21,25,5,17,9,23,30} B.{25,23,30,17,21,5,9}

C. {21,9,17,30,25,23,5} D. {5,9,17,21,23,25,30}【北方交通大学 2001 一、18 (2分)】 44.对关键码序列28,16,32,12,60,2,5,72快速排序,从小到大一次划分结果为( )。

A. (2,5,12,16)26(60,32,72) B. (5,16,2,12)28(60,32,72)