武汉理工数据结构考试试题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8.()堆排序中,在输出一个根之后的调整操作中,“临时根”结点的值将被调到“叶子结点”上。

3、填空(每小题2分,共14分)

1.在单链表中,删除指针P所指结点的后继结点的语句是()。

2.已知完全二叉树的第八层有8个结点,则其叶子结点数是()。

3.有n个顶点的强连通有向图G至少有()条弧。

4.求最短路径的DIJKSTRA算法的时间复杂度为()。

5.在有序表A[1,20]中,采用二分查找算法查找元素值等于A[12]的元素,所比较过的元素的下标依次为()。

6.直接选择排序算法所执行的元素交换次数最多为()。

7.下列排序算法中,稳定的排序算法是()(选择排序,堆排序,快速排序,直接插入排序)。

4、解答下列各题(38分)

1.一棵二叉树的先序序列和中序序列分别如下,画出该二叉树。(6分)

先序序列ABCDEFGHIJ

中序序列CBEDAGHFJI

2.对下面给出的数据序列,构造一棵哈夫曼树,并求出其带权路径长度。(8分)

4, 5, 6, 7, 10, 12, 15, 18, 23

3.图G的邻接表如下,完成下列各题:(8分)

(1)画出从顶点5出发进行广度遍历所生成的生成树。

(2)判断其中是否存在有向回路,若不存在,求出其拓扑序列。

132

254

367

498

59108

611

712

89

910

1011

1112

12^

4.对下列数据表,写出采用快速排序算法排序的每一趟的结果。(8分)

(60,20,31,1,5,44,55,61,200,30,80,150,4,29)

5.已知哈希表地址空间为0..8,哈希函数为H(k)=k % 7,采用线性探查法处理冲突。将下面数据序列依次存入该散列表中,并求出在等概率下的平均查找长度。(8分)

100,20,21,35,3,78,99,45

0 1 2 3 4 5 6 7 8

5、算法设计(共30分)

1.已知单循环链表L中至少有两个结点,每个结点的两个字段为data和next,其中字段data的类型为整型。设计算法以判断该链表中的每个元素的值是否小于其后续两个结点的值的和,若满足,返回true,否则返回false。

2.设计算法按后序次序打印二叉树T中所有叶子结点的值,并返回其结点数。

3.写出在二叉排序树中查找值为x的元素的算法。

武汉理工大学教务

试题标准答案及评分标准用纸

| 课程名称数据结构( A 卷)

一、选择题

1. (d) 2. (c) 3. (b) 4. (a) 5. (c)

二、判断题

1.(√) 2.(X) 3.(X) 4.(√) 5.(X) 6.

(X) 7.(X) 8.(X)

三、填空

1.P->next=P->next->next; 2. 68 3.

n 4.O(n2)

5. 10,15,12 6.n-

1 7.直接插入排序

四、解答下列各题

1.二叉树:

A

B F

C D G I

E H J

2.哈夫曼树如下页:

带权路径长度WPL=299

100

58 42

33 25 23 19

18 15 13 12 10 9

7 6 5 4

3.图G的邻接表如下,完成下列各题;(7分)

(1) 从顶点5出发进行广度遍历所生成的生成树;

5

9 10 8

11

12

(2)该图中不存在有向回路,其拓扑序列如下:

l 2 4 5 8 9 10 3 7 6 ll 12

4.快速排序各趋结果如下,其中括号中为待排序列,括号外为最终结果。

(60 20 31 1 5 44 55 61 200 30 80 150 4 29)

(29 20 31 1 5 44 55 4 30) 60 (80 150 200 61)

(4 20 5 1) 29(44 55 31 30) 60 (61)80 (200 150)

(1)4 (5 20)29(30 31) 44 (55)60 61 80 150 (200)

l 4 5 (20)29 30 (31) 44 55 60 61 80 150 200

1 4 5 20 29 30 31 44 55 60 61 80 150 200

5.散列表如下:

0 1 2 3 4 5 6 7 8

2135100378992045

1 2 1 1 4 5 1 5

平均查找长度ASL:(4*1+1*2+1*4+2*5)/8=2.5

五、算法设计(略)

相关文档
最新文档