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

2017年安徽理工大学软件工程841数据结构考研题库

  摘要

一、选择题

1. 将两个各有N 个元素的有序表归并成一个有序表,其最少的比较次数是( )。

A.N

B.2N-1

C.2N

D.N-1

【答案】A

【解析】归并排序基本思想:归并排序是多次将两个或两个以上的有序表合并成一个新的有序表。最简单的归并是直接将两个有序的子表合并成一个有序的表。归并排序最好情况下的复杂度为

2. 采用递归方式对顺序表进行快速排序。下列关于递归次数的叙述中,正确的是( )。

A. 递归次数与初始数据的排列次序无关

B. 每次划分后,先处理较长的分区可以减少递归次数

C. 每次划分后,先处理较短的分区可以减少递归次数

D. 递归次数与每次划分后得到的分区的处理顺序无关

【答案】D

【解析】快速排序是递归的,递归过程可用一棵二叉树给出,递归调用层次数与二叉树的深

,采用快速排序方法,其对应递归调用度一致。例如:待排序列{48, 62,35, 77, 55, 14, 35, 98)

过程的二叉树如下图所示。

在最坏情况下,若初始序列按关键码有序或基本有序时,快速排序反而蜕化为冒泡排序。即其对应递归调用过程的二叉树是一棵单支树。因此快速排序的递归次数与初始数据的排列次序有关。但快速排序的递归次数与每次划分后得到的分区处理顺序无关,即先处理较长的分区或先处理较短的分区都不影响递归次数。

3. 下列措施中,能加快虚实地址转换的是1增大快表(TLB ) 2让页表常驻内存3增大交换区( )。

A. 仅1

B. 仅2

C. 仅 1,2

D. 仅 2, 3

【答案】C

【解析】加大快表能增加快表的命中率,即减少了访问内存的次数;让页表常驻内存能够使cpu 不用访问内存找页表,从也加快了虚实地址转换。而增大交换区只是对内存的一种扩充作用,对虚实地址转换并无影响

4. 下列选项中,用于提高RAID 可靠性的措施有( )

I. 磁盘镜像 II. 条带化 III. 奇偶校验 IV . 增加Cache 机制

A. 仅 I 、II

B. 仅 I 、III

C. 仅 I 、III 和IV

D. 仅II 、III 和IV

【答案】B

【解析】能够提高RAID 可靠性的措施主要是对磁盘进行镜像处理和进行奇偶校验。其余选项不符合条件。

5. 在下图所示的平衡二叉树中,插入关键字48后得到一棵新平衡二叉树。在新平衡二叉树中,关键字37 所在结点的左、右子结点中保存的关键字分别是( )。

A.13、48

B.24、48

C.24、53

D.24、90

【答案】C

【解析】题目中,插入48以后,树根结点的平衡因子由-1变为-2, 失去平衡。这属于RL (先右后左)型平衡旋转,需做两次(先右旋后左旋转)旋转操作。过程如下图所示:

显然,在调整后的新平衡二叉树中,关键字37所在结点的左、右子结点中保存的关键字分别是24, 53。

6. 以下数据结构中,( )是非线性数据结构。

A. 树

B. 字符串

C. 队

D. 栈

【答案】A

【解析】非线性结构是指存在一对多或者多对一的关系。常见的非线性结构有树结构和图结构。

7. 在一棵具有15个关键字的4阶B 树中,含关键字的结点数最多是( )

A.5

B.6

C.10

D.15

【答案】D

【解析】m 阶B 树非根结点含关键字个数

4阶B 树非根结点含关键字1〜3个,所以要使关键字结点数量最多,那么每个结点只有一个关键字,一共有15个关键字那么最多有15个含有关键字的结点

8. 用有向无环图描述表达式(A+B)*(,至少需要顶点的数目为( )(A+B)/A)。

A.5 B.6 C.8 D.9

【答案】A

【解析】一共5个结点

9. 假设栈初始为空,将中缀表达式

当扫描到f 时,栈中的元素依次是( )

A.

B.

C.

6条边 转换为等价后缀表达式的过程中,