2018年云南大学信息学院831数据结构与操作系统之数据结构考研核心题库
● 摘要
一、单项选择题
1. 下列选项中,导致创建新进程的操作是( ).
(1)用户登录成功
(2)设备分配
(3)启动程序执行
A. 仅(1)和(2)
B. 仅(2)和(3)
C. 仅(1)和(3)
D. (1)、(2)和(3)
【答案】C
【解析】进程创建是需要填写PCB 表的,其中唯一不需要的是(2).考察一个进程创建的过程是这样的:当进程被创建,可以是用户创建,例如双击相关图标;也可以由父进程创建,例如lock ( )时,操作系统首先到PCB 表区搜索空闲的表格,若无则直接拒绝创建进程,若有则填写PCB 表创建进程. 通常填写PCB 表的过程有一段时间(主要涉及资源分配需要协调),许多操作系统为此设立了一个中间状态称为“初始化”,也有的操作系统不设这个中间状态. 此时操作系统填写进程ID 号、处理机参数、进程参数(状态、特权、优先级) 、分配内存(若是虚拟存储就分配虚拟地址) 、映射文件等,一切就绪,将控制权交给系统进行下一步调度. 设备分配可能引起进程状态的改变,但不会创建新进程,用户登录成功和启动程序执行都会创建新的进程,所以本题答案为C.
2. 某计算机系统中有8台打印机,由K 个进程竞争使用,每个进程最多需要3台打印机. 该系统可能会发生死锁的K 最小值是( ).
A.2
B.3
C.4
D.5
【答案】C
【解析】死锁的抽屉原理一般描述是:将5个苹果放进4个抽屉,那么,必然有1个抽屉中至少有2个苹果. 计算机系统的资源分配充分体现了这一原理. 考察进程运行的特点,只要有一个进程能够运行,则运行结束后必然会归还资源,其余的进程也就会得到满足从而可以执行(这里考虑的资源主要是可重用的资源,不可重用的资源会消失,就不可用上述方法分析). 所以最少需要4个进程竞争使用,每个进程占用2台打印机,此时会产生死锁.
3. 一个具有1025个结点的二叉树的高h 为( )。
A.11
B.10
C.11至1025之间
D.10至1024之间
【答案】C
【解析】当一棵树是完全二叉树时,其高度最低,此时高度为11,当一棵树的结点在一条线上时,此时最高,这时二叉树的高度是1025。
4. 有向带权图如下图图所示, 若采用迪杰斯特拉(Dijkstta)算法求从源点a 到其他各顶点的最短路径, 则得到的第一条最短路径的目标顶点是b , 第二条最短路径的目标顶点是c , 后续得到的其佘各最短路径的目标顶点依次是( )。
图 有向带权图
A.d , e , f
B.e , d , f
C.f , d , e
D.f , e , d
【答案】C 。
【解析】本题主要考查Dijkstta 算法的思想和解题步骤。题目执行算法过程中各步的状态如下表所示。执行Dijkstta 算法过程中各步的状态表, 故后续目标顶点依次为f , d , e 。
5. 以太网的MAC 协议提供的是( )。
A. 无连接不可靠服务
B. 无连接可靠服务
C. 有连接不可靠服务
D. 有连接可靠服务
【答案】A 。
【解析】考查以太网MAC 协议, 考虑到局域网信道质量好, 以太网采取了两项重要的措施以使通信更简洁:
①采用无连接的工作方式;
②不对发送的数据帧进行编号, 也不要求对方发回确认。
因此, 以太网提供的服务是不可靠的服务, 即尽最大努力交付, 差错的纠正由高层完成。
6. 假设某计算机按字编址, Cache 有4个行, Cache 和主存之间交换的块大小为1个字。若Cache 的内容初始为空, 采用2路组相联映射方式和LRU 替换算法, 当访问的主存地址依次为0, 4, 8, 2, 0, 6, 8, 6, 4, 8时, 命中Cache 的次数是( )。
A.1
B.2
C.3
D.4
【答案】C 。
【解析】Cache 有4个行, 2路组相联, 即Cache 被分成2组, 每组2行。主存地址为0〜1、4〜5、8〜9可映射到第0组Cache 中, 主存地址为2〜3、6〜7可映射到第1组Cache 中。Cache 初始为空, 采用LRU 替换算法, 当访问主存的10个地址依次为0, 4, 8, 2, 0, 6, 8, 6, 4, 8时, 命中Cache 的次数共有3次, 分别发生在第7、8和10步时。
7. 若平衡二叉树的高度为6, 且所有非叶结点的平衡因子均为1, 则该平衡二叉树的结点总数为( )。
A.12
B.20
C.32
D.33
【答案】B 。
【解析】本题的实际问题是, 具有6层结点的平衡二叉树含有最少的结点数是多少。
深度为h 的平衡二叉树中含有的最少结点数, 有
由此可得。对应的平衡二叉树如下图所示。
表示
相关内容
相关标签