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

2018年南京农业大学信息科学技术学院853计算机专业基础综合之数据结构考研基础五套测试题

  摘要

一、填空题

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

【答案】

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

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

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

【解析】第一次需要n -1次比较,第i 此需要n -i 此比较,所以共需要

3. 下列程序是快速排序的非递归算法,请填写适当的语句,完成该功能。

a 中存放待排序的关键字

【答案】

【解析】快速排序(quick sort)的基本思想是,通过一趟排序将待排记录分割成独立的两部分,

其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。

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

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

(1)若

是边,则

的值等于_____,若

不是边,则A(i, j) 的值是一个比任何

边的权_____,矩阵的对角线元素全为0。

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

【答案】(1)

已包括进生成树,就把矩阵元素

置成_____。

(3)算法结束时,相邻矩阵中_____的元素指出最小生成树的_____。

边上的权值;都大的数;(2)1; 负值;(3)为负;边

5. 二叉树的前序序列和中序序列相同的条件是_____。

【答案】空树或任何结点至多只有右子树的二叉树

【解析】前序遍历的顺序为根左右,中序遍历的顺序为左根右,因此若中序遍历和前序遍历序列相同,则任何结点都没有左子树。

6. 一棵有11个结点的满二叉树有_____个度为1的结点、有_____个分支(非终端) 结点和_____个叶子,该满二叉树的深度为_____。

【答案】

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

7. VSAM(虚拟存储存取方法) 文件的优点是:动态地_____,不需要文件进行_____,并能较快地_____进行查找。

【答案】分配和释放存储空间;重组;对插入的记录

8. 循环队列的引入,目的是为了克服_____。

【答案】假溢出时大量移动数据元素

【解析】用数组实现队列时,如果不移动,随着数据的不断读写,会出现假满队列的情况。即尾数组已满但头数组还是空的。循环队列也是一种数组,引入循环队列,有效克服假溢出大量移动数据元素的问题。

9. 顺序查找n 个元素的顺序表,若查找成功,则比较关键字的次数最多为_____次;当使用监视哨时,若查找失败,则比较关键字的次数为_____。

【答案】n ; n+1

【解析】最多的情况就是把整个表遍历了一遍。使用监视哨时,需要多一个存储空间来存监视哨。

10.在单链表L 中,指针P 所指结点有后继结点的条件是_____

【答案】P ﹣>next! =NULL

【解析】指针所指节点的指针域所指向的元素非空,说明该指针所指节点有后继结点。

二、单项选择题

11.b ,(c,d) ,(e,(f,g))) , 广义表A =(a,则式子Head(Tail(Head(Tail(Tail(A)))))的值为( )。

A.(g) B.(d) C.c D.d

【答案】D

【解析】head 操作就是得到广义表中第一个的原子。tail 操作就是得到除第一个原子外剩下元素构成的表。也就是tail 得到的元素需要在外层再加一个( )。

12.某计算机的控制器采用微程序控制方式, 微指令中的操作控制字段采用字段直接编码法, 共有33个微命令, 构成5个互斥类, 分别包含7、3、12、5和6个微命令, 则操作控制字段至少有 ( )。

A.5位 B.6位 C.15位 D.33位 【答案】C 。

33个微命令分成5个互斥类(即5个字段) , 根据每个类中微命令的多少可以分别确定【解析】

字段的长度为3、2、4、3、3位, 又因为采用直接编码方式, 所以它们之和

也就是操

作控制字段的位数。

13.下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序( )。

A. 二叉排序树 B. 哈夫曼树 C.A VL 树 D. 堆 【答案】D 【解析】堆的定义:

n 个关键字序列K 1,K 2,... ,K n 称为堆,当且仅当该序列满足如下性质(简称为堆性质) :

(1)

(2)

且且