2017年中国海洋大学信息科学与工程学院807数据结构考研强化模拟题
● 摘要
一、选择题
1. 现在有一颗无重复关键字的平衡二叉树(A VL 树),对其进行中序遍历可得到一个降序序列。下列关于该平衡二叉树的叙述中,正确的是( )。
A. 根节点的度一定为2
B. 树中最小元素一定是叶节点
C. 最后插入的元素一定是叶节点
D. 树中最大元素一定是无左子树
【答案】D
【解析】二叉树的中序遍历定义是“若二叉树为空,则空操作;否则:①中序遍历左子树;②访问根节点;③中序遍历右子树”。A 项错误,当树中仅有一个或者两个结点时,根节点的度就可能不为2;B 项错误,树中最小元素是中序遍历时最后访问的节点,当没有右子树时,最后访问的节点是根节点;C 项错误,当最后插入的元素破坏树的平衡后,树会进行调整,使其成为中间节点;D 项正确,由中序遍历的特点可知,左子树的值大于根节点,所以最大元素一定没有左子树。
2. 在支持多线程的系统中,进程P 创建的若干个线程不能共享的是( )。
A. 进程P 的代码段
B. 进程P 中打开的文件
C. 进程P 的全局变量
D. 进程P 中某线程的栈指针
【答案】D
【解析】现代操作系统中,进程是资源分配的基本单位,线程是处理机调度的基本单位。因此,进程是线程运行的容器,本题中,进程的代码段,进程打开的文件,进程的全局变量等都是进程的资源,唯有进程中某线程的栈指针是属于线程的,那么,属于进程的资源可以共享,属于线程的栈是独享的,不能共享。
3. 对同一待排序列分别进行折半插入排序和直接插入排序, 两者之间可能的不同之处是( )。
A. 排序的总趟数
B. 元素的移动次数
C. 使用辅助空间的数量
D. 元素之间的比较次数
【答案】D 。
【解析】折半插入排序所需附加存储空间和直接插入排序相同,从时间上比较,折半插入排序仅减少了关键字间的比较次数,
而记录的移动次数不变。折半插入排序的时间复杂度仍为
所以两者之间的不同只可能是元素之间的比较次数。
4. 主机甲和乙已建立了TCP 连接,甲始终以MSS=1KB大小的段发送数据,并一直有数据发送;乙每收到一个数据段都会发出一个接收窗口为10KB 的确认段。若甲在t 时刻发生超时时拥塞窗
口为8KB , 则从t 时刻起,不再发生超时的情况下,经过10个RTT 后,甲的发送窗口是( )。
A.10KB
B.12KB
C.14KB
D.15KB
【答案】A
【解析】发送窗口是接受窗口和拥塞窗口的最小值,这里接收窗口总是10KB 。拥塞窗口到那个时候是大于10KB 的,取最小值。
5. 若一个用户进程通过read 系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是( )。
I. 若该文件的数据不在内存,则该进程进入睡眠等待状态;II. 请求read 系统调用会导致CPU 从用户态切换到核心态;III. read系统调用的参数应包含文件的名称
A. 仅 I 、II
B. 仅 I 、III
C. 仅 II 、III
D.I 、II 和III
【答案】A
,原进程【解析】对于I ,当所读文件的数据不再内存时,产生中断(缺页中断、缺段中断)
,直到所需数据从外村调入内存后,将该进程唤醒,使其变为就绪进入睡眠等待状态(阻塞状态)
状态。对于II , read系统调 用CPU 将从用户态切换到核心态,从而获取操作系统提供的服务。对于III ,在操作系统中,要读一个文件首先要open 系统调用将该文件打开。Open 系统调用的参数需要包含文件的路径名与文件名,而read 系统调用只需使用open 返回的文件描述符,并不使用
Read 系统调用要求用户提供三个输入参数:文件名作为参数。①文件描述 符;②buf 缓冲区首址;
③传送的字节数n 。read 系统调用的功能是试图从fd 所指示的文件中读入n 个字节的数据,并将它们送至由指针buf 所指示的缓冲区中。
6. 对于循环队列( )。
A. 无法判断队列是否为空
B. 无法判断队列是否为满
C. 队列不可能满
D. 以上说法都不是
【答案】D
【解析】循环队列也会出现队列满的情况,并且循环队列也可以判断是否为空或满。至少可以通过两种方法进行判断:①另设一个布尔变量来区别队列是空还是满;②队满时,(rear+1)==font。
7. 图G 是n 个顶点的无向完全图,则下列说法不正确的是( )
A.G 的邻接多重表需要n (n-l )个边结点和n 个顶点结点
B.G 的连通分量个数最少
C.G 为连通图
D.G 所有顶点的度的总和为n (n-1)
【答案】A
【解析】A 项中G 的邻接多重表中需要n (n-l )/2个边结点和n 个顶点结点。此时连通分量最少为1。无向完全图中任意两个顶点之间都存在路径,则G 必为连通图。每个顶点的度为n-1,则n 个结点的度的总和为n (n-l )。
8. 在一棵三元树中度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为( )个。
A.4
B.5
C.6
D.7
【答案】C
【解析】设度为0的结点数为x 则度为3的树总结点数n=度为0的结点数+度为1的结点数+度为2的结点数+度为3的结点数从每个结点所指向的结点数的和的角度来计算度
为3
的树总结点数两种方法所计算出来的n 相等,所以
9. 假定不采用Cache 和指令预取技术,且机器处于“开中断”状态,则在下列有关指令执行的叙述中,错误的是( )。
A. 每个指令周期中CPU 都至少访问内存一次
B. 每个指令周期一定大于或等于一个CPU 时钟周期
C. 空操作指令的指令周期中任何寄存器的内容都不会被改变
D. 当前程序在每条指令执行结束时都可能被外部中断打断
【答案】C
【解析】本题涉及的概念比较多。首先,如果不采用Cache 和指令预取技术,每个指令周期中至少要访问内 存一次,即从内存中取指令。其次,指令有的简单有的复杂,每个指令周期总大于或等于一个CPU 时钟周期。第三,即使是空操作指令,在指令周期中程序计数器PC 的内容也会改变为取下一条指令做准备。第四,如果机器处于“开中断”状态,在每条指
令执行结束时都可能被新的更高级的中断请求所打断。所以应选择选项C 。
相关内容
相关标签