一、选择题
DDABA BCBDB ADCAD CDCCD
ADBCB DADAC DCDCB
二、填空题
1.联系,图(或图结构)
2.L->prior==L->next==L
3.head->next==NULL
4. 尾,首
5. top==0
6. O(1),O(2)
7. 128,44,108
8. 3,3
9.模式匹配
10.有序,n-1
12.2n,n-1,n+1
13. 2i+1,2i+2,(i-1)/2
14.开放定址法,链接法
15. 快速,归并
17.索引值域、开始位置域;
1.答案:
(1) ((1,5,1),(3,2,-1),(4,5,-2),(5,1,5),(6,3,7))
(2)如图1所示
2. 设有一个输入数据的序列是 { 46, 25, 78, 62, 12, 80 }, 试画出从空树起,逐个输入各个数据而生成的二叉搜索树。八度网上论坛成人
答案:如图2所示
3. 对于图3所示的有向图若存储它采用邻接表,并且每个顶点邻接表中的边结点都是按照终点序号从小到大的次序链接的,试写出: (1) 从顶点①出发进行深度优先搜索所得到的深度优先生成树; (2) 从顶点②出发进行广度优先搜索所得到的广度优先生成树;
答案:DFS:undefined‚undefined„…
BFS:‚undefined„…undefined
4. 已知一个图的顶点集V和边集E分别为:
V={1,2,3,4,5,6,7};
E={<2,1>,<3,2>,<3,6>,<4,3>,<4,5>,<4,6>,<5,1>,<5,7>,<6,1>,<6,2>,<6,5>};
若存储它采用邻接表,并且每个顶点邻接表中的边结点都是按照终点序号从小到大的次序链接的,按主教材中介绍的拓朴排序算法进行排序,试给出得到的拓朴排序的序列。
答案:拓朴排序为:sari病例 4 3 6 5 7 2 1
5.已知一组记录的排序码为(46,79,56,38,40,80, 95,24),写出对其进行快速
排序的每一次划分结果。
答案:
划分次序 | 划分结果 |
第一次 | [38 24 40] 46 [56 80 95 79] |
第二次 | 24 [38 40] 46 [56 80 95 79] |
第三次 | 24 38 40 46 [56 80 95 79] |
第四次 | 24 38 40 46 56 [80 95 79] |
第五次 | 24 38 40 46 56 79 [80 95] |
第六次 | 24 38 40 46 56 79 80 95 |
| |
6.一个线性表为B=(12,23,45,57,20,03,78,31,15,36),设散列表为HT[0..12],散列函数为H(key)= key % 13并用线性探查法解决冲突,请画出散列表,并计算等概率情况下查成功的平均查长度。
非政府间国际组织 0 1 2 3 4 5 6 7 8 9 10 11 12
答案:
78 | | 15 | 03 | | 57 | 45 | 20 | 31 | | 23 | 36 | 122011年5月22日 |
| | | | | | | | | | | | |
查成功的平均查长度:ASL SUCC=14/10= 1.4
7.已知一棵二叉树的前序遍历的结果序列是ABECKFGHIJ,中序遍历的结果是EBCDAFHIGJ,试写出这棵二叉树的后序遍历结果。 答案:此二叉树的后序遍历结果是:EDCBIHJGFA
8.已知一个图的顶点集V各边集G如下:
V = {0,1,2,3,4,5,6,7,8,9};
E = {(0,1),(0,4),(1,2),(1,7),(2,8),(3,4),(3 ,8),(电点火头5,6),(5,8),(5,9),(6,7),(7,8),(8,9)}
当它用邻接矩阵表示和邻接表表示时,分别写出从顶点V0出发按深度优先搜索遍历得到的
顶点序列和按广度优先搜索遍历等到的顶点序列。
假定每个顶点邻接表中的结点是按顶点序号从大到小的次序链接的。
图 | 深度优先序列 | 广度优先序列 |
邻接矩阵表示时 | | |
邻接表表示时 | | |
| | |
答案:
图 | 深度优先序列 | 广度优先序列 |
邻接矩阵表示时 | 0,1,2,8,3,4,5,6,7,9 | 0,1,4eaglelake,2,7,3,8,6,5,9 |
邻接表表示时 | 0,4,3,8,9,5,6,7,1,2 | 0,4,1,3,7,2,8,6,9,5 |
| | |
9.设一组初始记录关键字序列为(19,21,16,5,18,23),要求给出以19为基准的一趟快速排序结果以及第2趟直接选择排序后的结果。
答案: (18,5,16,19,21,23),(5,16,21,19,18,23)
10.设一组初始记录关键字集合为(25,10,8,27,32,68),散列表的长度为8,散列函数H(k)=k mod 7,要求分别用线性探测和链地址法作为解决冲突的方法设计哈希表。
答案: 线性探测: 链地址法:
11.设无向图G(所右图所示),要求给出该图的深度优先和广度优先遍历的序列并给出该图的最小生成树。
答案:深度:125364,广度:123456,最小生成树T的边集为E={(1,4),(1,3),(3,5),(5,6),(5,6)}
12.设指针变量p指向双向链表中结点A,指针变量q指向被插入结点B,要求给出在结点A的后面插入结点B的操作序列(设双向链表中结点的两个指针域分别为llink和rlink)。
答案: q->llink=p; q->rlink=p->rlink; p->rlink->llink=q; p->rlink=q;
13.假设用于通讯的电文仅由8个字母A、B、C、D、E、F、G、H组成,字母在电文中出现的频率分别为:0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10。请为这8个字母设计哈夫曼编码。