当前位置:问答库>考研试题

2017年湖北大学数学与计算机科学学院811数据结构考研题库

  摘要

一、填空题

1. 假设一个15阶的上三角矩阵A 按行优先顺序压缩存储在一维数组B 中,则非零元素中的存储位置k=_____。(注:矩阵元素下标从1开始)

【答案】93

【解析】对于上三角矩阵

,将代入得93。

2. 以下程序的功能是实现带附加头结点的单链表数据结点逆序连接,请填空完善之。

【答案】(1)(2)

3. 表达式

【答案】

4. 在二叉树中,指针p 所指结点为叶结点的条件是_____。

【答案】

【解析】叶子节点的左右孩子都不存在。

5. 如某二叉树有20个叶结点,有30个结点仅有一个孩子,则该二叉树的总结点数为_____。

【答案】69

【解析】二叉树叶结点数为20, 则度为2的结点数为19, 所以总的结点数为20+19+30=69。

6. 外排序的基本操作过程是_____和_____。

;归并 【答案】生成有序归并段(顺串)

7. —棵深度为k 的平衡二叉树, 其每个非终端结点的平衡因子均为0,则该树共有_____个结点。

【答案】树。故结点个数为

【解析】每个非终端结点都是0表示该平衡二叉树没有高度落差。也就是说它是一棵满二叉

链表未到尾就一直进行

将当前结点作为头结点后的第一元素结点插入

的后缀表达式是_____。

在B

8. 中缀式运算结果为_____。

【答案】

对应的前缀式为_____,若

则后缀式的

【解析】中缀式相当于中序遍历,前缀式相当于前序遍历,后缀式相当于后序遍历。

9. 试利用下列栈和串的基本操作完成下述填空题。

initstack (S ) 置S 为空找; push (S , X ) 元素X 入找; pop (S ) 出栈操作; gettop (S ) 返回栈顶元素; sempty (S ) 判找空函数;

置串 判串 返回联接

empty (st ) 判串空函数

{若给定的表达式的前缀式pre 正确,本过程求得和它相应的表达式exp 并返回true , 否则exp 为空串,并返回false 。已知原表达式中不包含括弧,opset 为运算符的集合。)

注意:毎个空格只填一个语句。 【答案】(1)

栈S 初始化为空栈

为空串;

是否相等的函数;

之后的串;

length (st ) 返回串st 的长度;

sub (S , i , 1) 返回S 中第i 个字符;

(2)(3)(4)(5)(6)(7)exp (8)(9)exp (10)(11)(12)

串exp 初始化为空串 判取出字符是否是操作符

如ch 是运算符,则入操作符栈s 判栈8是否为空

若读出ch 是操作数且栈为空,则按出错处理

若ch 是操作数且栈非空,则形成部分中缀表达式

取栈顶操作符 操作符取出后,出栈

将pre 的最后一个字符(操作数)加入到中缀式exp 的最后

10.高度为h 的堆中,最多有_____元素,最少有_____个元素。

【答案】

当最后一层只有

【解析】当这个堆构成的是满二叉树时,元素的个数最多,元素个数为一个元素时,此时堆的元素个数最少,元素个数为

二、选择题

11.对下图进行拓扑排序,可以得到不同的拓扑序列的个数是( )。

A.4

B.3 C.2 D.1

【答案】B

【解析】拓扑排序的步骤为:

(1)在有向图中选一个没有前驱的顶点并且输出它;

(2)从图中删除该顶点和以它为尾的弧。重复上述两步,直至全部顶点均已输出。由于没有前驱的顶点可能不唯一,所以拓扑排序的结果也不唯一。题中所给图有三个不同的拓扑棑序序列,分别为abced ,abecd ,aebcd 。

12.下列不是设计一个“好”的算法应考虑达到的目标是( )。

A. 可行的 B. 健壮的