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)
且且
或
相关内容
相关标签