2018年河北工程大学信息与电气工程学院814数据结构考研仿真模拟五套题
● 摘要
一、填空题
1.
【答案】5
2. VSAM 系统是由_____、_____、_____构成的。
【答案】索引集;顺序集;数据集
3. 起始地址为480,大小为8的块,其伙伴块的起始地址是_____;若块大小为32, 则其伙伴块的起始地址为_____; 。
【答案】480+8=488,480-32=448
【解析】起始地址为P ,大小为的内存块,其伙伴块的起始地址计算公式如下:
根据上述公式起始地址就为488。
4. 抽象数据类型的定义仅取决于它的一组_____,而与_____无关,即不论其内部结构如何变化,只要它的_____不变,都不影响其外部使用。
【答案】逻辑特性;在计算机内部如何表示和实现;数学特性
5. 二叉树由_____,_____,_____三个基本单元组成。
【答案】根结点;左子树;右子树
6. n 个顶点的有向图用邻接矩阵array 表示,下面是其拓扑排序算法,试补充完整。
注:(1)图的顶点号从0开始计;
(2)indegree是有n 个分量的一维数组,放顶点的入度,
(3)函数crein 用于记算顶点入度;
(4)有三个函数
回1,否则0) 。
第 2 页,共 56 页 =_____ 其含义为数据data 入栈,出栈和测试栈是否空(不空返
("图有回路") ;
【答案】
【解析】有向图用邻接矩阵表示时,顶点i 的入度等于第i 列的所有元素之和。拓扑排序过程:首先将入度为0的顶点全部进栈。然后弹出栈顶结点,并将与弹出的顶点相连的其它顶点的入度
减一,然后判断这些顶点的入度是否为零,如果为零,继续进栈,重复这些操作,完成拓扑排序。
7. 在单链表L 中,指针P 所指结点有后继结点的条件是_____
【答案】P ﹣>next! =NULL
【解析】指针所指节点的指针域所指向的元素非空,说明该指针所指节点有后继结点。
8. 在顺序存储的二叉树中,编号为i 和j 的两个结点处在同一层的条件是_____。 【答案】
要加“虚结点”。
设编号为i 和j 的结点在顺序存储中的下标为s 和t , 则结点i 和j 在同一层上的条件是
。
9. 在一个无向图的的邻接表中,若表结点的个数是m ,则图中边的条数是_____条。 【答案】
【解析】对于无向图,在邻接表中,如果存在n 条边,则会有2n 个表结点。
10.二进制地址为011011110000, 大小为和块的伙伴地址分别为:_____
【答案】011011110100;011011100000
【解析】011011110000是块的起始地址,大小分别为算公式如下:
当大小为4时,起始地址为011011110000+0100。当大小为16时,起始地址为:011011110000-010000。
第 3 页,共 56 页
【解析】用顺序存储结构存储二叉树时,要按完全二叉树的形式存储,非完全二叉树存储时,和其伙伴块的起始地址计
二、单项选择题
11.一个C 语言程序在一台32位机器上运行. 程序中定义了3个变量x 、Y 和z ,其中x 和z 为int
Y 为short 型. 当x =127,Y =-9时,x 、Y 和z 的值分别是. 型,执行赋值语句z =x +Y 后,( )
A.x =0000007FH , Y =FFF9H , z =00000076H
B.x =0000007FH , Y =FFF9H , z =FFFF0076H
C.x =0000007FH , Y =FFF7H , z =FFFF0076H
D.x =0000007FH , Y =FFF7H , z =00000076H
【答案】D
【解析】当两个不同长度的数据,要想通过算术运算得到正确的结果,必须将短字长数据转换成长字长数据,这被称为“符号扩展”.例如,x 和z 为int 型,数据长32位,Y 为short 型,数据长16位,因此首先应将y 转换成32位的数据,然后再进行加法运算.
运算采用补码的形式,而x 的补码是0000007FH ,Y 的补码是FFFFFFF7H ,所以x +Y =00000076H.
12.在对n 个元素的序列进行排序时,堆排序所需要的附加存储空间是( )。 A.
B.O(1)
C.O(n) D.
【答案】B
【解析】堆排序需要一个空间用于交换,因此堆排序所需要的附加存储空间为O(1)。
13.下列关于图的叙述中, 正确的是( )。
Ⅰ. 回路是简单路径
Ⅱ. 存储稀疏图, 用邻接矩阵比邻接表更省空间
Ⅲ. 若有向图中存在拓扑序列, 则该图不存在回路
A. 仅Ⅱ
B. 仅Ⅰ、Ⅱ
C. 仅Ⅲ
D. 仅Ⅰ、Ⅲ
【答案】C
【解析】第一个顶点和最后一个顶点相同的路径称为回路; 序列中顶点不重复出现的路径称为简单路径; 回路显然不是简单路径, 所以选项Ⅰ错误。稀疏图用邻接表表示比邻接矩阵节省存储空间, 稠密图适合用邻接矩阵的存储表示, 所以选项Ⅱ错误。利用拓扑排序算法可以判断图中是否存在回路, 即在拓扑排序输出结束后所余下的顶点都有前驱, 则说明了只得到了部分顶点的拓扑有序序列, 图中存在回路。所以选项Ⅲ正确。
第 4 页,共 56 页