资源描述:
《数据结构第七章排序习题.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、07 排序【单选题】1.从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放在已排序序列的合适位置,该排序方法称为(A)排序法。A、直接插入 B、简单选择 C、希尔 D、二路归并2.直接插入排序在最好情况下的时间复杂度为(B)。A、O(logn) B、O(n) C、O(n*logn) D、O(n2)3.设有一组关键字值(46,79,56,38,40,84),则用堆排序的方法建立的初始堆为(B)。A、79,46,56,38,40,80 B、84,79,56,38,40,46C、84,79,56,46,40,38 D、84,56,79,40,46,384.
2、设有一组关键字值(46,79,56,38,40,84),则用快速排序的方法,以第一个记录为基准得到的一次划分结果为(C)。A、38,40,46,56,79,84 B、40,38,46,79,56,84C、40,38,46,56,79,84 D、40,38,46,84,56,795.将两个各有n个元素的有序表归并成一个有序表,最少进行(A)次比较。A、n B、2n-1 C、2n D、n-16.下列排序方法中,排序趟数与待排序列的初始状态有关的是(C)。A、直接插入 B、简单选择 C、起泡 D、堆7.下列排序方法中,不稳定的是(D)。A、直接插入 B、起泡 C、二路归并 D、堆
3、8.若要在O(nlog2n)的时间复杂度上完成排序,且要求排序是稳定的,则可选择下列排序方法中的(C)。A、快速 B、堆 C、二路归并 D、直接插入9.设有1000个无序的数据元素,希望用最快的速度挑选出关键字最大的前10个元素,最好选用(C)排序法。A、起泡 B、快速 C、堆 D、基数10.若待排元素已按关键字值基本有序,则下列排序方法中效率最高的是(A)。A、直接插入 B、简单选择 C、快速 D、二路归并11.数据序列(8,9,10,4,5,6,20,1,2)只能是下列排序算法中的(C)的两趟排序后的结果。A、选择排序 B、冒泡排序 C、插入排序 D、堆排序12.(A)
4、占用的额外空间的空间复杂性为O(1)。A、堆排序算法 B、归并排序算法 C、快速排序算法 D、以上答案都不对13.对一组数据(84,47,25,15,21)排序,数据的排列次序在排序的过程中的变化为(1)8447251521 (2)1547258421 (3)1521258447 (4)1521254784则采用的排序是(A)。A、选择 B、冒泡 C、快速 D、插入14.一个排序算法的时间复杂度与(B)有关。A、排序算法的稳定性 B、所需比较关键字的次数C、所采用的存储结构 D、所需辅助存储空间的大小15.适合并行处理的排序算法是(B)。A、选择排序 B、快速排序 C、希尔
5、排序 D、基数排序16.下列排序算法中,(A)算法可能会出现下面的情况:初始数据有序时,花费的时间反而最多。A、快速排序 B、堆排序 C、希尔排序 D、起泡排序17.有些排序算法在每趟排序过程中,都会有一个元素被放置在其最终的位置上,下列算法不会出现此情况的是(A)。A、希尔排序 B、堆排序 C、起泡排序 D、快速排序18.在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是(A)。A、直接插入排序 B、起泡排序 C、简单选择排序 D、快速排序19.下列排序算法中,(D)算法可能会出现下面情况:在最后一趟开始之前,所有元素都不在其最终的位置上。A、堆排序 B、冒泡
6、排序 C、快速排序 D、插入排序20.下列排序算法中,占用辅助空间最多的是(A)。A、归并排序 B、快速排序 C、希尔排序 D、堆排序21.从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放在已排序序列的合适位置,该排序方法称为(A)排序法。A、插入 B、选择 C、希尔 D、二路归并22.用直接插入排序方法对下面四个序列进行排序(由小到大),元素比较次数最少的是(C)。A、94,32,40,90,80,46,21,69 B、32,40,21,46,69,94,90,80C、21,32,46,40,80,69,90,94 D、90,69,80,46,2
7、1,32,94,4023.对序列{15,9,7,8,20,-1,4}用希尔排序方法排序,经一趟后序列变为{15,-l,4,8,20,9,7}则该次采用的增量是(B)。A、l B、4 C、3 D、224.在含有n个关键字的小根堆(堆顶元素最小)中,关键字最大的记录有可能存储在(D)位置上。A、ën/2û B、ën/2û-1 C、1 D、ën/2û+225.对n个记录的线性表进行快速排序为减少算法的递归深度,以下叙述正确的是(A)。A、每次分区后,先处理较短的部分 B、每次分区后,先处理较长的部分C、与算法每次分区后的