软件技术数据结构部分习题解答.docx
- 文档编号:28997082
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:23
- 大小:514.71KB
软件技术数据结构部分习题解答.docx
《软件技术数据结构部分习题解答.docx》由会员分享,可在线阅读,更多相关《软件技术数据结构部分习题解答.docx(23页珍藏版)》请在冰豆网上搜索。
软件技术数据结构部分习题解答
2.21有一铁路交换站如题图(栈),火车从右边开进交换站,然后再开到左边,每节车厢均有编号如1,2,3,…,n。
请问:
(1)当n=3和n=4时有哪几种排序方式?
哪几种排序方式不可能发生?
(2)当n=6时,325641这样的排列是否能发生?
154623的排列是否能发生?
N=3时可能的出栈序列:
1231S1X2S2X3S3X
1321S1X2S3S3X2X
2131S2S2X1X3S3X
2311S2S2X3S3X1X
312CAB
3211S2S3S3X2X1X
N=4,不可能的排列:
43124213423141234132
312431423412
1423
2413
N=6时,325641可能154623不可能
2.22CQ[0:
10]为一循环队列,初态front=rear=1,画出下列操作后队的头、尾指示器状态:
(1)d,e,b,g,h入队;
(2)d,e出队;
(3)i,j,k,l,m入队;
(4)b出队;
(5)n,o,p,q,r入队;
2.23试画出表达式A*(B-D)/D+C**(E*F)执行过程中NS,OS栈的变化情况。
2.28将下面的树转换成二叉树。
2.29完全二叉树有1000个结点,问:
叶子结点有多少?
度为2的结点有多少?
多少个结点只有非空的左子树?
第一种做法:
N1=0/1,N是奇N1=0;N是偶N1=1
N=1000,N1=1
1000=N0+1+N21
N0=N2+12
N0=500,N2=499
第二法:
N=1000,29 第10层叶子结点数: N01=N-(29-1)=1000-511=489 第10层总结点数: 29=512 第10层空的结点数: 512-489=23 空结点数是奇数N1=1 第9层叶子结点数: N02=(23-1)/2=11 总叶子结点数: N0=N01+N02=489+11=500 N2=N-N0-N1=1000-500-1=499 补充: 度为3的树,1个度为1的结点,3个度为2的结点,4个度为3的结点,求叶子结点数? N=N0+N1+N2+N3=N0+1+3+4 B=N-1=N1+2*N2+3*N3=1+2*3+3*4=19N=20N0=12 2.30设一棵二叉树的中序遍历和后序遍历结果为: 中序: BDCEAFHG 后序: DECBHGFA 求先序? ABCDEFGH 2.32给定一组元素{17,28,36,54,30,27,94,15,21,83,40},画出由此生成的二叉排序树。 2.33给定一组权值W={8,2,5,3,2,17,4},画出由此生成的哈夫曼树。 下标 数据 双亲 左孩子 右孩子 0 8 10 -1 -1 1 2 7 -1 -1 2 5 9 -1 -1 3 3 8 -1 -1 4 2 7 -1 -1 5 17 12 -1 -1 6 4 8 -1 -1 7 4 9 1 4 8 7 10 3 6 9 9 11 7 2 10 15 11 8 0 11 24 12 9 10 12 41 -1 5 11 17: 0 8: 111 5: 101 4: 1101 3: 1100 2: 1000 2: 1001 2.34有一图如题图所示: (1)写出此图的邻接表与邻接矩阵; (2)由结点V1作深度优先搜索和广度优先搜索; (3)试说明上述搜索的用途。 邻接矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 3 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 4 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 5 1 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 7 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 8 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 10 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 11 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 12 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 13 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 14 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 15 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 17 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 18 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 19 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 20 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 邻接表: DFS: V1,V2,V3,V4,V5,V6,V7,V8,V9,V10,V11,V12,V13,V14,V15,V16,V17,V18,V19,V20 BFS: V1,V2,V5,V8,V3,V10,V4,V6,V7,V9,V12,V11,V14,V15,V18,V13,V19,V16,V17,V20 2.35有一有向图如下: (1)写出每一个结点的入度和出度各为多少; (2)写出此图的邻接矩阵与邻接表; 顶点 入度 出度 V1 3 0 V2 2 2 V3 1 2 V4 2 1 V5 2 1 V6 1 4 V1 V2 V3 V4 V5 V6 V1 0 0 0 0 0 0 V2 1 0 0 1 0 0 V3 0 1 0 0 0 1 V4 0 0 1 0 1 0 V5 1 0 0 0 0 0 V6 1 1 0 1 1 0 2.36求下图中结点a到各结点之间的最短路径。 2.37求下图中所示AOV网所有可能的拓扑排序结果。 栈保存入度为0的点 拓扑排序: V7->V5->V2->V4->V3->V6->V1->V8 2.38下图所示AOE网,求 (1)每一事件最早开始时间和最晚开始时间; (2)该计划最早完成时间为多少。 事件最早最迟开始时间 V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 VE 0 5 6 12 19 16 20 23 25 27 VL 0 9 6 12 19 23 20 23 25 27 活动最早最迟开始时间 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 E 0 0 5 6 6 12 12 12 19 19 16 20 23 25 L 4 0 9 6 16 12 19 16 19 19 23 20 23 25 L-E 4 0 4 0 10 0 7 4 0 0 7 0 0 0 关键活动是: a2,a4,a6,a9,a10,a12,a13,a14 关键路径: a2->a4->a6->a9->a12->a14或a2->a4->a6->a10->a13->a14 最早完成时间=关键路径权值之和: 6+6+7+1+5+2或6+6+7+4+2+2=27 2.40画一棵以20个记录进行对分查找的判定树,并求等概率下的平均查找长度。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 4 3 4 5 2 4 3 4 5 1 4 3 4 5 2 4 5 3 4 5 ASL=(1+2*2+3*4+4*8+5*5)/20=74/20 (13,29,01,23,44,55,20,84,27,68,11,10,79,14) 下标 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 数据 68 01 20 55 23 44 27 29 13 11 10 84 79 14 次数 1 1 1 1 1 1 2 1 1 4 6 1 7 5 线性探测再散列: p=17,m=19 ASL1=(1+1+1+1+1+1+2+1+1+4+6+1+7+5)/14=33/14 平方探测再散列: (13,29,01,23,44,55,20,84,27,68,11,10,79,14) 下标 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 数据 68 01 20 55 23 79 10 44 27 29 13 14 11 84 次数 1 1 1 1 1 5 3 1 2 1 1 1 4 1 ASL2=(1+1+1+1+1+5+3+1+2+1+1+1+4+1)/14=24/14 随机探测再散列: Rj={3,16,55,44,...} 下标 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 数据 68 01 20 55 23 27 10 44 11 29 13 79 84 14 次数 1 1 1 1 1 3 4 1 1 1 1 2 1 2 ASL3=(1+1+1+1+1+3+4+1+1+1+1+2+1+2)/14=21/14 2.41设有10个记录的关键字为: ICKES(9),BARBER (2),ELYOT(5),KERN(11),FRENCE(6),LOWES(12),BENSDN (2),FONK(6),ERVIN(5),KNOX(11)。 构造a=10/13的哈希表,取关键字首字母在字母表中的序号为哈希函数值,用随机探测解决冲突,dj=(d1+Rj)mod13,Rj取自随机数列: 3,7,1,12,10,…,统计该表的平均查找长度ASL。 下标 数据 次数 0 FONK 3 1 KNOX 2 2 BARBER 1 3 BENSDN 4 4 5 ELYOT 1 6 FRENCE 1 7 8 ERVIN 2 9 ICKES 1 10 11 KERN 1 12 LOWES 1 ASL=(3+2+1+4+1+1+2+1+1+1)/10=1.7 2.42对于给定的一组关键字: 41,62,13,84,35,96,57,39,79,61,15,83。 分别写出: 插入排序、简单选择排序、堆排序、冒泡排序、快速排序、二叉排序树的排序过程,并对各排序方法进行分析。 简单选择排序: 41,62,13,84,35,96,57,39,79,61,15,83 第一趟: 13,62,41,84,35,96,57,39,79,61,15,83 第二趟: 13,15,41,84,35,96,57,39,79,61,62,83 第三趟: 13,15,35,84,41,96,57,39,79,61,62,83 第四趟: 13,15,35,39,41,96,57,84,79,61,62,83 第五趟: 13,15,35,39,41,96,57,84,79,61,62,83 第六趟: 13,15,35,39,41,57,96,84,79,61,62,83 第七趟: 13,15,35,39,41,57,61,84,79,96,62,83 第八趟: 13,15,35,39,41,57,61,62,79,96,84,83 第九趟: 13,15,35,39,41,57,61,62,79,96,84,83 第十趟: 13,15,35,39,41,57,61,62,79,83,84,96 第11趟: 13,15,35,39,41,57,61,62,79,83,84,96 堆排序: 41,62,13,84,35,96,57,39,79,61,15,83 调整成堆: 调整成堆: 调整成堆: 调整成堆: 输出61: 调整成堆: 调整成堆: 输出79: 调整成堆: 输出96: 线性插入排序: 41,62,13,84,35,96,57,39,79,61,15,83 第01趟: 41,62,13,84,35,96,57,39,79,61,15,83 第02趟: 13,41,62,84,35,96,57,39,79,61,15,83 第03趟: 13,41,62,84,35,96,57,39,79,61,15,83 第04趟: 13,35,41,62,84,96,57,39,79,61,15,83 第05趟: 13,35,41,62,84,96,57,39,79,61,15,83 第06趟: 13,35,41,57,62,84,96,39,79,61,15,83 第07趟: 13,35,39,41,57,62,84,96,79,61,15,83 第08趟: 13,35,39,41,57,62,79,84,96,61,15,83 第09趟: 13,35,39,41,57,61,62,79,84,96,15,83 第10趟: 13,15,35,39,41,57,61,62,79,84,96,83 第11趟: 13,15,35,39,41,57,61,62,79,83,84,96 冒泡排序: 41,62,13,84,35,96,57,39,79,61,15,83 第01趟: 41,13,62,35,84,57,39,79,61,15,83,96 第02趟: 13,41,35,62,57,39,79,61,15,83,84,96 第03趟: 13,35,41,57,39,62,61,15,79,83,84,96 第04趟: 13,35,41,39,57,61,15,62,79,83,84,96 第05趟: 13,35,39,41,57,15,61,62,79,83,84,96 第06趟: 13,35,39,41,15,57,61,62,79,83,84,96 第07趟: 13,35,39,15,41,57,61,62,79,83,84,96 第08趟: 13,35,15,39,41,57,61,62,79,83,84,96 第09趟: 13,15,35,39,41,57,61,62,79,83,84,96 第10趟: 13,15,35,39,41,57,61,62,79,83,84,96 第11趟: 13,15,35,39,41,57,61,62,79,83,84,96 快速排序: 41,62,13,84,35,96,57,39,79,61,15,83x=41 第一次划分: 15,39,13,35,41,96,57,84,79,61,62,83 二叉排序树: 41,62,13,84,35,96,57,39,79,61,15,83
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件技术 数据结构 部分 习题 解答
![提示](https://static.bdocx.com/images/bang_tan.gif)