2018年大连理工大学盘锦校区商学院810数据结构和计算机组成原理之数据结构考研强化五套模拟题
● 摘要
一、单项选择题
1. 假设5个进程P0、P1、P2、P3、P4共享三类资源R1、R2、R3, 这些资源总数分别为18、6、22。时刻的资源分配情况如下表所示, 此时存在的一个安全序列是( )。
表 资源分配情况表
A.P0, P2, P4, P1, P3
B.P1, P0, P3, P4, P2
C.P2, P1, P0, P3, P4
D.P3, P4, P2, P1, P0P0
【答案】D 。
【解析】典型的死锁避免算法、银行家算法的应用。分析一下下表, 可以看到, P3, P4, P2, P1, P0运行是可以的。
表
本题也可以排除法, 时刻可用资源是R1, R2, R3分别为2, 3, 3, 此时刻, P0需要R1, R2, R3分别为2, 3, 7, 故排除A , P1需要R1, R2, R3分别为1, 3, 3, P2还需要资源R1, R2, R3分别为0, 0, 6, 故C 排除, P3需要R1, R2, R3分别为2, 2, 1。所以正确答案在B , D 之间。
看B 选项, P1之后的可用资源R1, R2, R3分别变为6, 3, 6, 而P0尚需资源2, 3, 7, 故B 方案行不通。因而最终答案只有D 项。
2. 计算机开后, 操作系统最终被加载到( )
A.BIOS
B.ROM
C.EPROM
D.RAM
【答案】D
【解析】系统开机后, 操作系统的程序会被自动加载到内存中的系统区, 这段区城是RAM , 故答案选D 。
3. 设有一个n 行n 列的对称矩阵A ,将其下三角部分按行存放在一个一维数组B 中,A[0][0]存放于B[0]中,那么第i 行的对角元素A[i][i]存放于B 中( )处。
A.(i+3)*i/2
B.(i+1)*i/2
C.(2n﹣i +l)*i/2
D.(2n﹣i ﹣l)*i/2
【答案】A
【解析】A[i][i]中列标不大于行标,又A[0][0]存放在B[0]中,所以A[i][i]存放的位置为i*(i+l)/2+i +l ﹣l =i*(i+3)/2。
4. 若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。
A. 顺序表
B. 双链表
C. 带头结点的双循环链表
D. 单循环链表
【答案】A
【解析】线性表采用顺序表,便于进行存取任一指定序号的元素;线性表采用链表,便于进
行插入和删除操作。但该题是在最后进行插入和删除运算,所以利用顺序表存储方式最节省时间。
5. 进程P0和P1的共享变量定义及若进程P0和P1访问临界资源的类C 伪代码实现如下:
则并发执行进程P0和PI 时产生的情况是( ).
A. 不能保证进程互斥进入临界区,会出现“饥饿”现象
B. 不能保证进程互斥进入临界区,不会出现“饥饿”现象
C. 能保证进程互斥进入临界区,会出现“饥饿”现象
D. 能保证进程互斥进入临界区,不会出现“饥饿”现象
【答案】D
【解析】这是皮特森算法(Peterson‟SAlgorithm)的实现,保证进入临界区的进程合理安全. 该算法为了防止两个进程为进入临界区而无限期等待,设置变量tum ,表示不允许进入临界区的编号,每个进程在先设置自己标志后再设置turn 标志,不允许另一个进程进入,这时,再同时检测另一个进程状态标志和不允许进入标志,这样可以保证当两个进程同时要求进入临界区时只允许一个进程进入临界区. 保存的是较晚的一次赋值,则较晚的进程等待,较早的进程进入. 先到先人,后到等待,从而完成临界区访问的要求.
6. 在下列表述中,正确的是( )
A. 含有一个或多个空格字符的串称为空格串
B. 对n(n>0) 个顶点的网,求出权最小的n ﹣1条边便可构成其最小生成树
C. 选择排序算法是不稳定的
D. 平衡二叉树的左右子树的结点数之差的绝对值不超过1
【答案】C
【解析】平衡二叉树的左右子树的深度之差的绝对值不超过1。求最小生成树时,每次挑最小权值边,是要求该边的两点都在不同的连通分量上的。
7. 下列选项中, 满足短任务优先且不会发生饥饿现象的调度算法是( )。
A. 先来先服务
B. 高响应比优先
C. 时间片轮转
D. 非抢占式短任务优先
【答案】B
【解析】分析该题目可以看到, 本题所提到的问题是涉及短任务调度也就是属于作业调度, 因此首先排除时间片轮转算法; 因为作业调度算法中没有时间片轮转的算法。其次, 因为问题提到短任务, 则先来先服务的算法也可以排除了, 它与短任务无关。剩余高响应比优先算法和非抢占式短