2018年中国科学技术大学软件学院834软件工程基础[专业硕士]之数据结构考研仿真模拟五套题
● 摘要
一、单项选择题
1. 将一棵树t 转换为孩子兄弟链表表示的二叉树h ,则t 的后序遍历是h 的( )。
A. 前序遍历
B. 中序遍历
C. 后序遍历
【答案】B
【解析】树的后序遍历恰好对应于二叉树的中序遍历。
2. 对下图进行拓扑排序, 可以得到不同的拓扑序列的个数是( )。
图
A.4
B.3
C.2
D.1
【答案】B
【解析】拓扑排序的步骤为:
(1)在有向图中选一个没有前驱的顶点并且输出它;
(2)从图中删除该顶点和以它为尾的弧。重复上述两步, 直至全部顶点均已输出。由于没有前驱的顶点可能不唯一, 所以拓扑排序的结果也不唯一。题中所给图有三个不同的拓扑排序序列, 分别为abced , abecd , aebcd 。
3. 以下数据结构中,( )是非线性数据结构。
A. 树
B. 字符串
C. 队
D. 栈
【答案】A
【解析】非线性结构是指存在一对多或者多对一的关系。常见的非线性结构有树结构和图结构。
4. 设n 是描述问题规模的非负整数, 下面程序片段的时间复杂度是( )。
A. B. C. D.
【答案】A
【解析】其中, 以基本的原操作重复执行的次数作为算法的时间度量。题目中的基本运算是语
句, 设其执行时间为, 则有即。
5. 下列关于图的叙述中, 正确的是( )。
Ⅰ. 回路是简单路径
Ⅱ. 存储稀疏图, 用邻接矩阵比邻接表更省空间
Ⅲ. 若有向图中存在拓扑序列, 则该图不存在回路
A. 仅Ⅱ
B. 仅Ⅰ、Ⅱ
C. 仅Ⅲ
D. 仅Ⅰ、Ⅲ
【答案】C
【解析】第一个顶点和最后一个顶点相同的路径称为回路; 序列中顶点不重复出现的路径称为简单路径; 回路显然不是简单路径, 所以选项Ⅰ错误。稀疏图用邻接表表示比邻接矩阵节省存储空间, 稠密图适合用邻接矩阵的存储表示, 所以选项Ⅱ错误。利用拓扑排序算法可以判断图中是否存在回路, 即在拓扑排序输出结束后所余下的顶点都有前驱, 则说明了只得到了部分顶点的拓扑有序序列, 图中存在回路。所以选项Ⅲ正确。
6. —个进程的读磁区操作完成后, 操作系统针对该进程必做的是( )
A. 修改进程状态为就绪态
B. 降低进程优先级
C. 进程分配用户内存空间
D. 增加进程的时间片大小
【答案】A
【解析】进程等待的
操作完成便会从等待状态转移到就绪状态。
7. 在一个有N 个元素的有序单链表中查找具有给定关键字的结点,平均情况下的时间复杂性为( )。
A.O(1)
B.O(N)
C.O(N2) D.
【答案】B
【解析】二分查找的时间复杂度为。在一个用N 个元素的有序单链表中查找具有给定
关键字的结点,因为查找是从头结点开始的,需要使用指针顺序往下查找,因此时间复杂度为0(N)。
8. 主机甲和主机乙之间已建立了一个TCP 连接,TCP 最大段长度为1000字节,若主机甲的当前拥塞窗口为4000字节,在主机甲向主机乙连续发送两个最大段后,成功收到主机乙发送的对第一个段的确认段,确认段中通告的接收窗口大小为2000字节,则此时主机甲还可以向主机乙发送的最大字节数是( ).
A.1000
B.2000
C.3000
D.4000
【答案】A
【解析】发送方的发送窗口的上限值应该取接收方窗口和拥塞窗口这两个值中较小的一个,于是此时发送方的发送窗口为min{4000,2000) =2000字节,由于发送方还没有收到第二个最大段的确认,所以此时主机甲还可以向主机乙发送的最大字节数为2000-1000=1000字节,正确选项为A.
9. 有一个100*90的稀疏矩阵,非0元素有10个,设每个整型数占2字节,则用三元组表示该矩阵时,所需的字节数是( )。
A.60
B.66
C.18000
D.33
【答案】B
【解析】如果是全部,则是需要100*90*2个字节;但是用三元组表示的话,只需要记录非零数据的X 坐标,Y 坐标,数值即可,就是每个非零数字需要占用三个整数的空间,即2*3=6字节,10个非零整数则是2*3*10=60字节;如果问有效元素占的空间大小,则选A 项,但是如果从整体来看,应该多一个用来记录矩阵宽(100)、高(90)、默认值(0)的元素,所以还应该多算6个字节。所以全部为66字节,选B 项。