2015 年计算机学科专业基础综合试题参考答案
一、单项选择题
1. A 2.
9. C 10.
17. B 18.
25. D 26.
33. D 34.
1. 解析:
递归调用函数时,在系统栈里保存的函数信息需满足先进后出的特点,依次调用了 main(),
S(l), S(O), 故栈底到栈顶的信息依次是 main(), S(1), S(O) 。
2. 解析:
根据二叉树前序遍历和中序遍历的递归算法中递归工作栈的状态变化得出:前序序列和中
序序列的关系相当于以前序序列为入栈次序,以中序序列为出栈次序。因为前序序列和中序序
列可以唯一地确定一棵二叉树,所以题意相当千“以序列 a,b, c, d为入栈次序,则出栈序列的
个数为多少“,对于 n个不同元素进栈,出栈序列的个数为— -c;n= 14 。 n+l
3.
11.
19.
27.
35. 4.
12.
20.
28. 36.
CBCCC ACBCA CDDCC DBBBA
DABAB DACAB BCDBA 5.
13.
21.
29. 37.
6.
14.
22.
30.
38. 7.
15.
23.
31.
39.
8.
16.
24. 32.
40.
3. 解析:
在哈夫曼树中,左右孩子权值之和为父结点权值。仅以分析选项 A 为例:若两个 10 分别
属千两棵不同的子树,根的权值不等于其孩子的权值和,不符;若两个 10 属于同棵子树,其权
值不等千其两个孩子(叶结点)的权值和,不符。 B、C选项的排除方法一样。
4. 解析:
只有两个结点的平衡二叉树的根结点的度为 1, A 错误。中序遍历后可以得到一个降序序
列,树中最大元素一定无左子树(可能有右子树),因此不一定是叶结点, B错误。最后插入的
结点可能会导致平衡调整,而不一定是叶结点, C错误。
5. 解析:
画出该有向图图形如下。
采用图的深度优先遍历,共 5种可能: <vo, VJ, V3, V2>, <vo, V2, V3, V1>, <vo, V2, Vi, V3>, <vo, V3,
V2,
V1>, <vo, V3, V1, V2>, 选 D。
6. 解析:
从 V4 开始, Kruskal 算法选中的第一条边一定是权值最小的 (V1,V4), B 错误。由于 V1 和
&