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

2018年军事医学科学院生物工程研究所836计算机应用之数据结构考研强化五套模拟题

  摘要

一、填空题

1. 若用n 表示图中顶点数目,则有_____条边的无向图成为完全图。 【答案】

【解析】无向完全图中任意一个顶点都和其他n -1个顶点都有一条边,即为n(n-1) 。又因

. 。 为每条边重复出现两次,所有无向完全图的边数为

2. 对于双向链表,在两个结点之间插入一个新结点需修改的指针共_____个,单链表为_____个。

【答案】4;2

3. 用循环链表表示的队列长度为n ,若只设头指针,则出队和入队的时间复杂度分别是_____和_____;若只设尾指针,则出队和入队的时间复杂度分别是_____和_____。

【答案】O(1);O(n);O(1);O(1)

【解析】队列的出队操作即删除队头的元素,队列的入队操作即在队尾添加元素,循环链表只设头指针,出队时,只要把头结点的下一个结点删除就好了,入队时,要把新的结点插入队尾,必须把队列遍历,找到队尾指针,才能插入。循环队列只设尾指针,出队时只要把为指针的下一个结点或者下下个结点删除即可,入队时,只要在尾指针的后面插入新的结点,并更新尾结点即可。

4. 建立索引文件的目的是_____。

【答案】提高查找速度

5. 在一个具有n 个单元的顺序栈中,假定以地址高端(即下标为n 的单元) 作为栈底,以top 作为栈顶指针,则当向栈中压入一个元素时,top 的变化是top =_____。

【答案】top ﹣1

【解析】由于栈底在地址高端,栈中压入一个元素时,栈顶向地址底端移动一个单位,所以top ﹣1。

6. 堆是一种有用的数据结构。堆排序是一种_____排序,堆实质上是一棵_____结点的层次序列。对含有N 个元素的序列进行排序时,堆排序的时间复杂度是_____,所需的附加存储结点是_____。关键码序列05, 23, 16, 68, 94, 72, 71, 73是否满足堆的险质_____ 。

【答案】选择;完全二叉树;;O(1);满足堆的性质

7. 已知一循环队列的存储空间为

则此循环队列判满的条件是_____ 【答案】,其中n >m ,队头和队尾指针分别为front 和rear ,

8. 当线性表的元素总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素时,应采用_____存储结构。

【答案】顺序

【解析】顺序存储结构的存取操作比较方便,但插入和删除操作不如链式存储结构方便,而且需要连续的存储空间,由于该线性表的元素总数基本稳定,而且很少进行插入删除操作,为了更快的存取元素,顺序表更合适。

9. N 个顶点的连通图用邻接矩阵表示时,该矩阵至少有_____个非零元素。 【答案】

【解析】所谓连通图一定指的是无向图,有向图会称作强连通图。连接N 个顶点,至少需要N -1条边就可以了。由于无向图的每一条边同时关联了两个顶点。因此用邻接矩阵表示时,该矩阵至少有2(N-1) 个非零元素。

10. 设有一个10阶对称矩阵A 采用压缩存储方式(以行为主序存储:a 11=l) ,则a 85的地址为_____。

【答案】33

【解析】设存储的元素的行标为i ,列标为j 。若i >=j ,则的地址为l +2+... +i ﹣l +j =i(i﹣l)/2+j 。若i <j 。则的地址为j(j﹣l)/2+i 。将i =8,j =5代入得33。

11.执行顺序查找时,存储方式可以是_____,折半查找时,要求线性表_____,分块查找时要求线性表_____,而哈希表的查找,要求线性表的存储方式是_____。

【答案】顺序存储或链式存储;顺序存储且有序;块内顺序存储,块间有序;散列存储

12.阅读下列程序说明和程序,填充程序中的_____。

【程序说明】本程序完成将二叉树中左、右孩子交换的操作。交换的结果如下所示。

本程序采用非递归的方法,设立一个堆栈stack 存放还没有转换过的结点,它的栈顶指针为tp 。交换左、右子树的算法为:

(1)把根结点放入堆栈。

(2)当堆栈不空时,取出栈顶元素,交换它的左、右子树,并把它的左、右子树分别入栈。

(3)重复(2)直到堆栈为空时为止。

【答案】

【解析】本题主要使用堆栈完成了二叉树左右子树交换的操作。首先根结点进栈,然后判断栈是否为空,如果不为空,则取栈顶元素,交换取出结点的左右指针。并将左右指针分别进栈,重复这一操作。完成二叉树左右孩子的交换。

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

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

(1)若是边,则的值等于_____,若不是边,则A(i, j) 的值是一个比任何

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

成_____,若

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

14.设有两个算法在同一机器上运行,其执行时闻分别为100n 2和2n ,要使前者快于后者,n 至少为_____。

【答案】15

【解析】当时,100n2>2n,而,时,100n <2

15.分别采用堆排序,快速排序,起泡排序和归并排序,对初态为有序的表,则最省时间的是_____2n 算法,最费时间的是_____算法。

【答案】起泡;快速

【解析】当初态为有序表时,冒泡排序只需要进行一趟比较即可,此时时间复杂度为O(n),

2而快速排序算 法需要比较的次数达到最大,时间复杂度为O (n) 。

二、单项选择题

16.哈希函数有一个共同的性质,即函数值应当以( )取其值域中的每个值。

A. 最大概率

B. 最小概率

C. 平均概率

D. 同等概率