第八章 排序练习答案

发布时间:2020-03-24 04:14:42   来源:文档文库   
字号:

第八章 排序(答案)

一、 选择题

1.一组记录的排序码为47,78,57,39,41,85.,则利用堆排序的方法建立的初始推为

A).78,47,57,39,41,85 B).85,78,57,39,41,47

C).85,78,57,47,41,39 D).85,57,78,41,47,39

2.一组记录的关键码为48,79,52,38,40,84.,则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为

A).38,40, 48, 52,79,84 B).40,38, 48,79, 52,84

C).40,38, 48, 52,79,84 D).40,38, 48,84, 52,79

3.一组记录的排序码为26,48,16,35,78,82,22,40,37,72.,其中含有5个长度为2的有序表,按归并排序的方法对该序列进行一趟归并后的结果为

A).16, 26,35,48, 22,40, 78,82, 37,72

B).16, 26,35,48, 78,82, 22, 37,40,72

C).16, 26,48,35, 78,82, 22, 37,40,72

D).16, 26,35,48, 78, 22, 37,40,72,82

4.以下序列不是堆的是

A.105,85,98,77,80,61,82,40,22,13,66

B.105,98,85,82,80,77,66,61,40,22,13

C.13,22,40,61,66,77,80,82,85,98,105

D.10585,40,77,80,61,66,98,82,13,22

5、下列四种排序方法中,不稳定的方法是

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

6、对下列4个序列用快速排序方法进行排序,以序列的第1个元素为基准进行划分。在第1趟划分过程中,元素移动次数最多的是序列

A.71,75,82,90, 24,18,10,68

B.71,75,68,23,10,18,90,82

C.82,75,71,18,10,90,68,24

D.24,10,18,71,82,75,68,90

7.下列排序算法中,___________算法可能在初始数据有序时,花费的时间反而最多。

A 堆排序 B 冒泡排序 C 快速排序 D 插入排序

8.对包含N个元素的散列表进行检索,平均查找长度为_________.

A .O(log2N) B. O(N)

C.不直接依赖于N D. 上述说法都不对

9.在各种排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端的方法是________________

A. 插入排序 B. 希尔排序 C. 选择排序 D. 归并排序

10.一组记录的关键字为(46,79,56,38,40,84),则利用堆排序的方法建立的初始堆为_____________

A 79,46,56,38,40,80 B 84,79,56,38,40,46

C 84,79,56,46,40,38 D 84,56,79,40,46,38

11.对具有8个元素的序列(49,38,65,97,76,13,27,50),按升序排序,采用快速排序法第一趟的结果为_________ 答案:2738134976976550

A) 13,65,38,97,76,49,27,50 B) 13,27,38,49,50,65,76,97

C) 97,76,65,50,49,38,27,13 D) 13,38,65,97,76,49,27,50

12.下列哪个排序属于稳定排序_________

A 希尔排序 B 2路排序 C 堆排序 D 快速排序

二、填空题

1、在插入排序、选择排序、快速排序和归并排序中,平均查找时间最少的是 快速排序 ,要求存储量最大的是 归并排序 .

2、用冒泡法对n个关键字排序,在最好的情况下,只需做 n-1 次比较和 0 次移动;在最坏的情况下,要做 n(n-1)/2 次比较

3、在快速排序和堆排序中,若待排序记录序列接近正序或逆序,则应该选用 堆排序 ,若待排序记录序列无序,则应该选用 快速排序 .

4、设顺序表中有1000个元素,用折半查找时,最大比较次数为 10 ,最小比较次数为

1 .

.5、已知关键字序列为(2015141821364010),采用快速排序法对其排序,第一趟排序后的关键字序列为 (10,15,14,18,20,36,40,21)

6、对关键字序列(528063 4690.)进行一趟快速排序之后得到的结果为 (46,52,63,80,90)

三、简答题

1.已知序列{72839965103679},请给出采用插入排序法对该序列作升序排序时的每一趟的结果。

初始: 72),839965103679

1趟:(72 83),9965103679

2趟:(72 83 99),65103679

3趟:(65 72 8399),103679

4趟:(1065728399),3679

5趟:(103665728399),79

6趟:(7103665728399),9

7趟:(79103665728399

2.已知序列(10164361219158),请给出采用shell排序法对该序列作升序排序时的每一趟的结果。

初始:10164361219158

d=51趟:10143612169158

d=22趟:41631081591612

d=13趟:13468910121516



3.已知序列{17185540732736589},请给出采用冒泡排序法对该序列作升序排序的每一趟的结果。

初始:17185540732736589

1趟:17184073255657389

2趟:17187324055657389

3趟:17718324055657389

4趟:71718324055657389

5趟:71718324055657389



4.已知序列{5018751261908170897275653462},请给出采用快速排序法对该序列作升序排列时的每一趟的结果。

初始:5018951261908170897276653462

1趟:4628927661170501897908653512

2趟:1708927661462501897908653512

3趟:6189170276462501897908653512

4趟:6189170276462501897908653512

5趟:6189170276462501897908653512

6趟:6189170276462501897908653512

7趟:6189170276462501512653897908

8趟:6189170276462501512653897908

9趟:6189170276462501512653897908

10趟:6189170276462501512653897908



5.已知序列{508516901789276546},请给出采用堆排序法对该序列作降序排列时的每一趟的结果。

采用堆排序法排序的各趟结果如图所示,排序结果为908965515046271786







a.初始a





b.建堆





c)交换908,输出90







d)筛选调整





e)交换896,输出89







f)筛选调整







g.交换656,输出65







h. 筛选调整





i.交换518,输出51







j)筛选调整 k)交换508,输出50







l)筛选调整 m)交换468,输出46







n)筛选调整 o.交换276,输出27







p)筛选调整 q.)交换176,输出17







r)筛选调整 s)交换86,输出8 t)输出6



6.已知序列{5138761261908180898265673412},请给出,采用基数排序法对该序列作升序排序时的每一趟的结果。

初始序列: 5138761261908180899265673412

1趟(按个位排序):1806161241251367326587908899

2趟(按十位排序):908,61241251361265673180 87899

3趟(按百位排序):6187180265412513612673899908

7.已知序列(11166561419),请给出采用归并排序法对该序列作升序排序时的每一趟的结果。

初始:11166531419

1趟:[1116][56][314][19]

2趟:[561116][13914]

3趟:[1356 9111416]

3趟归并完毕,则排序结束

本文来源:https://www.2haoxitong.net/k/doc/d2f4db838762caaedd33d487.html

《第八章 排序练习答案.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式