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

2017年华北电力大学(北京)控制与计算机工程学院844数据结构[专业硕士]考研强化模拟题

  摘要

一、填空题

1. 对n 个记录的表r[l..n]进行简单选择排序,所需进行的关键字间的比较次数为_____。

【答案】n (n-1)/2

【解析】第一次需要n-1次比较,第i 此需要n-i 此比较,所以共需要、n-l+n-2+...+l=n(n-l )/2。

2.

设单链表的结点结构为为指针域,已知指针px 指向单链表中data 为x 的结

_____;点,指针py 指向data 为y 的新结点,若将结点y 插入结点x 之后,贝懦要执行以下语句:

_____; 【答案】

3. 组成串的数据元素只能是_____。

【答案】字符

4. 高度为4的3阶B-树中,最多有_____个关键字。

【答案】26

【解析】第4层是叶结点,1层至3层每个结点两个关键字,每个节点的关键字达到最大时,关键字最多。

5. 栈是_____的线性表,其运算遵循_____的原则。

;后进先出 【答案】操作受限(或限定仅在表尾进行插入和删除操作)

6. 在拓扑分类中,拓扑序列的最后一个顶点必定是_____的顶点。

【答案】出度为0

【解析】如果最后一个顶点的出度不为0, 则必定还有顶点存在,与题目所说的最后一个顶点矛盾,所有最 后一个顶点的出度必定为零。

7. 设用希尔排序对数组{98,36,-9,0,47,23,1,8,10,7}进行排序,给出的步长(也称

增量序列)依次是4,2,1则排序需_____趟,写出第一趟结束后,数组中数据的排列次序_____。

【答案】3; (10,7,-9,0,47,23,1,8,98,36)

8. 高度为h 的堆中,最多有_____元素,最少有_____个元素。 【答案】

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

一个元素时,此时堆的元素个数最少,元素个数为

9. 深度为H 的完全二叉树至少有_____个结点; 至多有_____个结点; H 和结点总数N 之间的关系是_____。 【答案】

10.—棵有个结点的满二叉树有_____个度为1的结点、有_____个分支(非终端)结点和_____个叶子,该满二叉树的深度为_____。 【答案】

【解析】满二叉树没有度为1的结点,度为0的结点等于度为2的结点个数+1。

11.下面描述的是一种构造最小生成树算法的基本思想。设要处理的无向图包括n

个顶点

用相邻矩阵A 表示,边的权全是正数。请在下列划线处填上正确叙述。

(1)若是边,则的值等于_____,若不是边,则的值是一个比任何边的权,矩阵的对角线元素全为0。

(2)构造最小生成树过程中,若顶点Vi 已包括进生成树,就把相邻矩阵的对角线元素A (i , i )置成若

【答案】(1) 已包括进生成树,就把矩阵元素A (i ,j )置成。 边上的权值;都大的数;(2)1; 负值;(3)为负;边 (3)算法结束时,相邻矩阵中的元素指出最小生成树的

12.起始地址为480,大小为8的块,其伙伴块的起始地址是_____;若块大小为32,则其伙伴块的起始地址为_____。 【答案】

【解析】起始地址为P ,大小为的内存块,其伙伴块的起始地址计算公式如下:

根据上述公式起始地址就为488。

二、选择题

13.数据序列

结果。

A. 选择排序

B. 起泡排序

C. 插入排序

D. 堆排序

【答案】C

只能是下列排序算法中的( )的两趟排序后的

【解析】选择排序、起泡排序和堆排序两趟排序后,在序列的某一端应该有序列的两个最大值或者最小值。

14.下列选项中,不可能是快速排序第2趟排序结果的是( )

A.2, 3, 5, 4, 6, 7, 9

B.2, 7, 5, 6, 4, 3, 9

C.3, 2, 5, 4, 7, 6, 9

D.4, 2, 3, 5, 7, 6, 9

【答案】C

【解析】对于快速排序,每一趟都会使一个元素位于有序时的位置,而有序序列为2, 3, 4, 5, 6, 7, 9, 与C 进行对比,只有9位于它有序的时候的位置,显然不是第二趟快速排序的结果

15.中断处理和子程序调用都需要压栈以保护现场,中断处理一定会保存而子程序调用不需要保存其内容的是( )。

A. 程序计数器

B. 程序状态字寄存器

C. 通用数据寄存器

D. 通用地址寄存器

【答案】B 。

【解析】中断处理与子程序调用最大的区别是中断处理程序与正在运行的进程可能无关,而子程序调用与正在运行的进程有关。中断是要打断处理器的正常工作次序,并要求其去处理某一事件的一种常用手段。因此,除了要保护当前程序的地址,计数器(指针)和数据寄存器以外,还需要保存程序状态字。子程序调用是与当前进程有关,是正在运行的程序有意安排执行的,这一类调用发生的时间以及位置具有确定性,处于同一个进程内,因此不需要保存程序状态字。所以中断处理和子程序调用不同的区别是中断处理程序必定会保存程序状态字寄存器。

16.若将关键字1,2, 3, 4, 5, 6, 7依次插入到初始为空的平衡二叉树T 中,则T 中平衡因子为0的分支结点的个数是( )

A.0

B.1

C.2

D.3

【答案】D

【解析】将图中给定的关键字序列依次插入到平衡树中,构成的平衡树如下图所示,由图可知平衡因子为0的分支结点为3个叶子结点,故答案为D 。