数据结构练习题(含答案) 联系客服

发布时间 : 星期三 文章数据结构练习题(含答案)更新完毕开始阅读aa99027658fb770bf68a552c

4.请用图示说明图7.9从顶点a到其余各顶点之间的最短路径。 b 5 d 6 3 a 2 3 2 f 3 c e 5 图7.9 4

5.已知AOE网有9个结点:V1,V2,V3,V4,V5,V6,V7,V8,V9,其邻接矩阵如下: (1)请画出该AOE图。

(2)计算完成整个计划需要的时间。 (3)求出该AOE网的关键路径。 ∝ 6 4 5 ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ 1 ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ 1 ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ 2 ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ 9 7 ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ 4 ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ 2 ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ 4 ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝ ∝

习题答案

7.1 1. C 2.B 3.B 4. C 5. A 6. A 8.D 9. AC 10.DB 11. CB 12. A 13. D 14.D 16.A 17.A 18.B 19.B 20.B 21.A 7.2 1.n-1 2. 1;0 3. 1

4.v1,v2,v3,v6,v5, v4;v1,v2,v5,v4,v3, v6 5.求矩阵第i列非零元素之和 6. 将矩阵第i行全部置为零 7.n 8.9

9.对每个顶点查找其邻接点的过程;O(e)(e为图中的边数);O(e);

遍历图的顺序不同;DFS采用栈存储访问过的结点,BFS采用队列存储访问过 的结点。

10.邻接矩阵 邻接表

11.一个结点可能有若干个前驱,也可能有若干个后继 12.2 13.唯一

7.3 1.

1 5

6

2 4 2.

3 7.C 15.A

(1).

(2) 3.

a 11 b 13 15 c 14 d 12 f e 6 12 5 23644 1 52634 156234 5612343 516234 512634 512364 1 12 7 5 6 5 4 10 9 4. b W=5 2 a 3 c

W=3

5.(1)该AOE图为:

d 3 W=6 3 f W=9 4 e W=7 26157197421543428649(2)完成整个计划需要18天。 (3)关键路径为:(V1,V2,V5,V7,V9)和(V1,V2, V5,V8,V9,)

习题8 查找

8.1 单项选择题

1.顺序查找法适合于存储结构为____的线性表。

A. 散列存储 B. 顺序存储或链接存储 C. 压缩存储 D. 索引存储

2.对线性表进行二分查找时,要求线性表必须____。

A. 以顺序方式存储 B. 以链接方式存储 C. 以顺序方式存储,且结点按关键字有序排序 D. 以链接方式存储,且结点按关键字有序排序

3.采用顺序查找方法查找长度为n的线性表时,每个元素的平均查找长度为____.

A. n B. n/2 C. (n+1)/2 D. (n-1)/2

4.采用二分查找方法查找长度为n的线性表时,每个元素的平均查找长度为____。

A.O(n) B. O(nlog2n) C. O(n) D. O(log2n) 5.二分查找和二叉排序树的时间性能____。

A. 相同 B. 不相同

6.有一个有序表为{1,3,9,12,32,41,45,62,75,77,82,95,100},当二分查找值82为的结点时,____次比较后查找成功。

A. 1 B. 2 C. 4 D. 8

7.设哈希表长m=14,哈希函数H(key)=key。表中已有4个结点:

addr (15)=4; addr (38)=5; addr (61)=6; addr (84)=7 如用二次探测再散列处理冲突,关键字为49的结点的地址是____。 A. 8 B. 3 C. 5 D. 9

8.有一个长度为12的有序表,按二分查找法对该表进行查找,在表内各元素等概率情况下查找成功所需的平均比较次数为____。

A. 35/12 B. 37/12 C. 39/12 D. 43/12

9.对于静态表的顺序查找法,若在表头设置岗哨,则正确的查找方式为 。

A.从第0个元素往后查找该数据元素 B.从第1个元素往后查找该数据元素 C.从第n个元素往开始前查找该数据元素 D.与查找顺序无关

10.解决散列法中出现的冲突问题常采用的方法是 。

A.数字分析法、除余法、平方取中法 B.数字分析法、除余法、线性探测法 C.数字分析法、线性探测法、多重散列法 D.线性探测法、多重散列法、链地址法

11.采用线性探测法解决冲突问题,所产生的一系列后继散列地址 。

A.必须大于等于原散列地址 B.必须小于等于原散列地址

C.可以大于或小于但不能等于原散列地址 D.地址大小没有具体限制 12.对于查找表的查找过程中,若被查找的数据元素不存在,则把该数据元素插入到集合中。这种方式主要适合于 。

A.静态查找表 B.动态查找表 C.静态查找表与动态查找表 D两种表都不适合 13.散列表的平均查找长度 。

A.与处理冲突方法有关而与表的长度无关 B.与处理冲突方法无关而与表的长度有关 C.与处理冲突方法有关而与表的长度有关 D.与处理冲突方法无关而与表的长度无关 8.2 填空题(将正确的答案填在相应的空中)

1.顺序查找法的平均查找长度为____;折半查找法的平均查找长度为____;哈希表查找法采用链接法处理冲突时的平均查找长度为____。

2.在各种查找方法中,平均查找长度与结点个数n无关的查找方法是____。 3.折半查找的存储结构仅限于____,且是____。

4. 假设在有序线性表A[1..20]上进行折半查找,则比较一次查找成功的结点数为____,则比较二次查找成功的结点数为____,则比较三次查找成功的结点数为____,则比较四次查找成功的结点数为____,则比较五次查找成功的结点数为____,平均查找长度为____。

5. 对于长度为n的线性表,若进行顺序查找,则时间复杂度为____;若采用折半法查找,则时间复杂度为____; 6.已知有序表为(12,18,24,35,47,50,62,83,90,115,134),当用折半查找90时,需进行 次查找可确定成功;查找47时,需进行 次查找成功;查找100时,需进行 次查找才能确定不成功。

7.二叉排序树的查找长度不仅与 有关,也与二叉排序树的 有关。

8.一个无序序列可以通过构造一棵 树而变成一个有序树,构造树的过程即为对无序序列进行排序的过程。 9.平衡二叉排序树上任一结点的平衡因子只可能是 、 或 。 10. 法构造的哈希函数肯定不会发生冲突。 11.在散列函数H(key)=key%p中,p应取____。

12.在散列存储中,装填因子?的值越大,则____;?的值越小,则____。

2

8.3 综合练习题:

1. 画出对长度为10的有序表进行折半查找的判定树,并求其等概率时查找成功的平均查找长度。 4. 选取哈稀函数H(k)=(3k)MOD 11。用开放定址法处理冲突,di=i((7k)MOD 10+1)(I=1,2,3,…).试在0-10的散列地址空间中对关键字序列(22,41,53,46,30,13,01,67)造哈希表,并求等概率情况下查找成功时的平均查找长度。

5. 已知一组关键字{49,38,65,97,76,13,27,44,82,35,50},画出由此生成的二叉排序树,注意边插入边平衡。 习题答案

8.1 1.B 2.C 3.C 4.D 5.B 6.C 7.D 8.B

9.C 10.D 11.C 12.B 13.C

8.2 1. (n+1)/2 、((n+1)*log2(n+1))/n-1 、1+?(?为装填因子) 2. 哈希表查找法

3. 顺序存储结构、有序的 4. 1、2、4、8、5、3.7

(依题意,构造一棵有序二叉树,共12个结点,第一层1个结点,第二层2个结点,第三层4个结点,第四层5个结点,则:ASL=(1*1+2*2+3*4+4*5)/12=37/12) 5. O(n)、O(log2n) 6.2、4、3

7.结点个数n、生成过程 8.二叉排序树 9.0、1、-1 10.直接定址

11.素数

12.存取元素时发生冲突的可能性就越大、存取元素时发生冲突的可能性就越小 习题9 排序 9.1 单项选择题

1. 在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是____。

A. 希尔排序 B. 起泡排序 C. 插入排序 D. 选择排序

2. 设有1000个无序的元素,希望用最快的速度挑选出其中前10个最大的元素,最好选用____排序法。

A. 起泡排序 B. 快速排序 C. 堆排序 D. 基数排序

3. 在待排序的元素序列基本有序的前提下,效率最高的排序方法是____。

A. 插入排序 B. 选择排序 C. 快速排序 D. 归并排序 4. 一组记录的排序码为(46,79,56,38,40,84),则利用堆排序的方法建立的初始堆为____。

A. 79,46,56,38,40,80 B. 38,46, 56,79, 40,84, C. 84,79,56,46,40,38 D. 84,56,79,40,46,38 5. 一组记录的关键码为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为____。

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 6. 一组记录的排序码为(25,48,16,35,79,82,23,40,36,72),其中含有5个长度为2的有序表,按归并排序的方法对该序列进行一趟归并后的结果为____。

A. 16,25,35,48,23,40,79,82,36,72 B. 16,25,35,48,79,82,23,36,40,72 C. 16,25,48,35,79,82,23,36,40,72 D. 16,25,35,48,79,23,36,40,72,82

7. 排序方法中,从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为____。

A. 希尔排序 B. 起泡排序 C. 插入排序 D. 选择排序

8. 排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端的方法,称为____。

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

9. 用某种排序方法对线性表( 25,84,21,47,15,27,68,35,20)进行排序时,元素序列的变化情况如下: ⑴ 25,84,21,47,15,27,68,35,20 ⑵ 20,15,21,25,47,27,68,35,84 ⑶ 15,20,21,25,35,27,47,68,84