2018年中国民航大学计算机科学与技术学院833算法与数据结构之数据结构考研仿真模拟五套题
● 摘要
一、填空题
1. —棵左子树为空的二叉树在前序线索化后,其中的空链域的个数为_____。
【答案】2
【解析】只有根结点的做指针为空和最右边的叶结点的右指针为空。
2. 从平均时间性能而言,_____排序最佳。
【答案】快速
【解析】快速算法的平均时间复杂度为nlogn 。 3. 分别采用堆排序,快速排序,起泡排序和归并排序,对初态为有序的表,则最省时间的是_____算法,最费时间的是_____算法。
【答案】起泡;快速
【解析】当初态为有序表时,冒泡排序只需要进行一趟比较即可,此时时间复杂度为O(n),
2
而快速排序算 法需要比较的次数达到最大,时间复杂度为O (n) 。
4. 中缀式(c-d)对应的前缀式为_____,若a=l,b=2, c=3, d=4, 则后缀式
的
运算结果为_____。
【答案】
【解析】中缀式相当于中序遍历,前缀式相当于前序遍历,后缀式相当于后序遍历。
5. 对于一个具有n 个结点的二叉树,当它为一棵_____二叉树时具有最小高度, 当它为一棵_____时,具有最大高度。
【答案】完全;只有一个叶结点的二叉树
6. 在一棵m 阶B-树中,若在某结点中插入一个新关键字而引起该结点分裂,则此结点中原有的关键字的个数是_____; 若在某结点中删除一个关键字而导致结点合并,则该结点中原有的关键字的个数是_____。
【答案】
【解析】m 阶B-树除根结点和叶子结点外,结点中关键字个数最多是m -1,最少
7. 应用prim 算法求解连通网络的最小生成树问题。
(1)针对如图所示的连通网络,试按如下格式给出在构造最小生成树过程中顺序选出的各条边。(始顶点号,终顶点号,权值
)
(2)下面是Prim 算法的实现,中间有5个地方缺失,请阅读程序后将它们补上。
的值在
图的顶点数,应由用户定义
用二维数组作为邻接矩阵表示
生成树的边结点
边的起点与终点
边上的权值
最小生成树定义
从顶点rt 出发构造图G 的最小生成树T , rt 成为树的根结点
初始化最小生成树
T
依次求MST 的候选边
遍历当前候选边集合
选具有最小权值的候选边
图不连通,出错处理
修改候选边集合
中
【答案】(1)
(2)
【解析】Prim 算法的执行类似于寻找图的最短路径的Dijkstra 算法。假设是N 上最小生成树边的集合。算法从属于
的边为止。
,
属于E 中找一条代价最小的边
加入集合
是连通图
,
,v ,
直到
开始,重复执行下述操作:在所有u 属于
,同时将并入
8. 在进行入栈运算时应先判别栈是否_____:在进行出栈运算时应先判别栈是否_____:当栈中元素为n 个,进行入栈运算时发生上溢,则说明该栈的最大容量为_____。为了增加内存空间的利用率和减少溢出的可能性,由两个栈共享一片连续的空间时,应将两栈的_____分别设在内存空间的两端,这样只有当_____时才产生溢出。
【答案】满;空;n ;栈底;两栈顶指针相邻(即值之差的绝对值为1)
9. 栈是_____的线性表,其运算遵循_____的原则。
【答案】操作受限(或限定仅在表尾进行插入和删除操作) ;后进先出
10.n 个顶点的有向图用邻接矩阵array 表示,下面是其拓扑排序算法,试补充完整。
注:(1)图的顶点号从0开始计;
(2)indegree是有n 个分量的一维数组,放顶点的入度, (3)函数crein 用于记算顶点入度; (4)有三个函数回1,否则0) 。
("图有回路") ;
【答案】
其含义为数据data 入栈,出栈和测试栈是否空(不空返
【解析】有向图用邻接矩阵表示时,顶点i 的入度等于第i 列的所有元素之和。拓扑排序过程:首先将入度为0的顶点全部进栈。然后弹出栈顶结点,并将与弹出的顶点相连的其它顶点的入度
相关内容
相关标签