2017年武汉工程大学计算机科学与工程学院835数据结构之数据结构教程考研导师圈点必考题汇编
● 摘要
一、填空题
1. 设T 和P 是两个给定的串,在T 中寻找等于P 的子串的过程称为_____,又称P 为_____。
【答案】模式匹配;模式串
2. —棵有个结点的满二叉树有_____个度为1的结点、有_____个分支(非终端)结点和_____个叶子,该满二叉树的深度为_____。
【答案】
或
【解析】满二叉树没有度为1的结点,度为0的结点等于度为2的结点个数+1。
3. 对于给定的元素,可以构造出的逻辑结构有_____,_____,_____,_____四种。
【答案】集合;线性结构;树形结构;图状结构(网状结构)
4. 设有两个算法在同一机器上运行,其执行时闻分别为_____。
【答案】15 【解析】当
5. 在一棵m
阶的个数是_____。
【答案】
最少
【解析】m
阶树除根结点和叶子结点外,结点中关键字个数最多是
6. 二叉树的前序序列和中序序列相同的条件是_____。
【答案】空树或任何结点至多只有右子树的二叉树
【解析】前序遍历的顺序为根左右,中序遍历的顺序为左根右,因此若中序遍历和前序遍历序列相同,则任何结点都没有左子树。
7. 对单链表中元素按插入方法排序的C 语言描述算法如下,其中L 为链表头结点指针。请填充算法中标出的空白处,完成其功能。
第 2 页,共 71 页
要使前者快于后者,n 至少为
时,而
,时,
树中,若在某结点中插入一个新关键字而引起该结点分裂,则此结点中原有的
关键字的个数是_____;若在某结点中删除一个关键字而导致结点合并,则该结点中原有的关键字
【答案】(1)(2)(3)(4)(5)
置空链表,然后将原链表结点逐个插入到有序表中
当链表尚未到尾,p 为工作指针
查P 结点在链表中的插入位置,这时q 是工作指针
将P 结点链入链表中
是q 的前驱,u 是下个待插入结点的指针
8. 应用prim 算法求解连通网络的最小生成树问题。
(1)针对如图所示的连通网络,试按如下格式给出在构造最小生成树过程中顺序选出的各条边。
〔始顶点号,终顶点号,权值)
(2)下面是Prim 算法的实现,中间有5个地方缺失,请阅读程序后将它们补上。
的值在〈limits •h>中
//图的顶点数,应由用户定义
//用二维数组作为邻接矩阵表示
//生成树的边结点
//边的起点与终点
//边上的权值
//最小生成树定义
//从顶点rt 出发构造图G 的最小生成树T ,rt 成为树的根结点
//初始化最小生成树
T
//依次求MST 的候选边
第 3 页,共 71 页
//遍历当前候选边集合
//选具有最小权值的候选边
//图不连通,出错处理
//修改候选边集合
【答案】(1)(0,3,1); (3,5, 4); (5,2,2); (3,1, 5); (1,4,3) (2)①T[k]; tovex=i②min=Maxint③mispos=i④exit (O )⑤T[i]; fromvex=v
【解析】Prim 算法的执行类似于寻找图的最短路径的Dijkstra 算法。假设N={V,E}是连通图
,是N
上最小生成树边的集合。算法从属于
为止。
9. 在拓扑分类中,拓扑序列的最后一个顶点必定是_____的顶点。
【答案】出度为0
【解析】如果最后一个顶点的出度不为0, 则必定还有顶点存在,与题目所说的最后一个顶点矛盾,所有最 后一个顶点的出度必定为零。
10.以下程序的功能是实现带附加头结点的单链表数据结点逆序连接,请填空完善之。
【答案】(1)链表未到尾就一直进行
(2)
将当前结点作为头结点后的第一元素结点插入
E T 开始,重复执行下述操作:在所有u
属于
加入集合
同时将
并入
v
直到
的边(u ,v )属于E
中找一条代价最小的边
二、选择题
11.5个字符有如下4种编码方案,不是前缀编码的是( )
A.
B.
C.
D. 【答案】D
第 4 页,共 71 页
相关内容
相关标签