2021年湖南大学信息科学与工程学院866数据结构考研核心题库之应用题精编

特别说明

本书根据历年考研大纲要求并结合历年考研真题对该题型进行了整理编写,涵盖了这一考研科目该题型常考试题及重点试题并给出了参考答案,针对性强,考研复习首选资料。

版权声明

青岛掌心博阅电子书依法对本书享有专有著作权,同时我们尊重知识产权,对本电子书部分内容参考和引用的市面上已出版或发行图书及来自互联网等资料的文字、图片、表格数据等资料,均要求注明作者和来源。但由于各种原因,如资料引用时未能联系上作者或者无法确认内容来源等,因而有部分未注明作者或来源,在此对原作者或权利人表示感谢。若使用过程中对本书有任何异议请直接联系我们,我们会在第一时间与您沟通处理。

因编撰此电子书属于首次,加之作者水平和时间所限,书中错漏之处在所难免,恳切希望广大考生读者批评指正。

重要提示

本书由本机构编写组多位高分在读研究生按照考试大纲、真题、指定参考书等公开信息潜心整理编写,仅供考研复习参考,与目标学校及研究生院官方无关,如有侵权请联系我们立即处理。

一、2021年湖南大学信息科学与工程学院866数据结构考研核心题库之应用题精编1.设b是一棵采用二叉链存储的满二叉树,设计一个算法将其先序遍历序列转换为后序遍历序列。

【答案】在满二叉树中,任一节点的左、右子树均含有相等个数的节点,同时,先序遍历序列的第一个节点作为后序遍历序列的最后一个节点,由此得到将先序遍历序列转换成后序遍历序列的递归模型如下。

对应的递归算法如下。

2.一个深度为L的满K叉树有以下性质:第L层上的结点都是叶子结点,其余各层上每个结点都有K棵非空子树。如果按层次顺序从1开始对全部结点进行编号,求:

(1)各层的结点数目是多少?

(2)编号为n的结点的双亲结点(若存在)的编号是多少?

(3)编号为n的结点的第i个孩子结点(若存在)的编号是多少?

(4)编号为n的结点有右兄弟的条件是什么。如果有,其右兄弟的编号是多少?

请给出计算和推导的过程。

【答案】(1)显然第i层上有个结点。

(2)若n=l时,该结点为根,无双亲结点,否则其双亲结点为。分析如下:假设编

号为n的结点,其第k-1个儿子的编号为nk,那么第k个儿子的编号为nk+1,最小儿子的编号为。若把这k个儿子的编号均加上k-2,则其儿子的编号依次为nk,。若

同除以k,则其儿子的编号范围在n和n+1之间。在此范围内取下整数n,即是这k个儿子的双亲

结点的编号n,故编号为n的双亲结点的编号为。

(3)由上分析可知其第k-1个儿子的编号为nk。所以,如果它有儿子,则其第i个儿子的编号为nk+(i-(k-l))。

(4)当,该结点有右兄弟,其右兄弟的编号为n+1。

3.设目标为,模式为。

(1)计算模式P的nextval函数值;

(2)不写出算法,只画出利用KMP算法进行模式匹配时每一趟的匹配过程。

【答案】(1)p的nextval函数值为0110132(p的next函数值为0111232)。

(2)利用KMP(改进的nextval)算法,每趟匹配过程如下:

4.给出一组关键字:29,18,25,47,58,12,51,10。分别写出按下列各种排序方法进行排序时的变化过程:

(1)归并排序:每归并一次书写一个次序;

(2)快速排序:每划分一次书写一个次序;

(3)堆排序:先建立一个堆,然后每从堆顶取下一个元素后,将堆调整一次。

【答案】(1)归并排序过程如图1所示。

.

图1

(2)快速排序过程如图2所示。

图2

(3)堆排序过程如图3所示。

.

.

.

.

图3

5.已知某图的邻接表如图所示。

(1)写出此邻接表对应的邻接矩阵。

(2)写出由开始的深度优先遍历序列。

(3)写出由开始的广度优先遍历序列。

【答案】(1)从图的邻接表中,可以得出该图中有6个顶点,对应的邻接矩阵为

相关文档
最新文档