2018年河南大学软件学院928专业基础课(程序设计、数据结构)[专业硕士]之数据结构考研强化五套模拟题
● 摘要
一、单项选择题
1. 下列有关总线定时的叙述中, 错误的是( )。
A. 异步通信方式中, 全互锁协议最慢
B. 异步通信方式中, 非互锁协议的可靠性最差
C. 同步通信方式中, 同步时钟信号可由多设备提供
D. 半同步通信方式中, 握手信号的采样由同步时钟控制
【答案】C
A 项正确, 异步通信方式中, 全互锁协议最慢, 主从模块都需要等待确认后才能撤销其【解析】
信号; B 项正确, 异步通信方式中, 非互锁协议没有相互确认机制, 因此可靠性最差; C 项错误, 同步通信要遵循统一的时钟信号, 不能由多设备提供; D 项正确, 半同步通信方式中, 握手信号的采样由同步时钟控制。
2. 向一个栈顶指针为h 的带头结点的链栈中插入指针S 所指的结点时,应执行( )。
A.h ﹣>next =s ;
B.s ﹣>next =h ;
C.s ﹣>next =h ;h ﹣>next =s ;
D.s ﹣>next =h ﹣next ;h ﹣>next =s ;
【答案】D
【解析】本题是向一个链栈中插入结点,可从头结点后插入。先将s 结点指向第一个头结点之后的结点之前,再将头结点指向s 结点。
3. 在双向链表指针P 的结点前插入一个指针q 的结点操作是( )。
A.p ﹣>llink =q ;q ﹣>Rlink =p ;p ﹣>Llink ﹣>Rlink =q ;q ﹣>Llink =q ;
B.p ﹣>llink =q ;p ﹣>Llink ﹣>Rlink =q ;q ﹣>Rlink =p ;q ﹣>Llink =p ﹣>Llink ;
C.q ﹣>Rlink =p ;q ﹣>Llink =p ﹣>L1ink ;p ﹣>L1ink ﹣>Rlink =q ;p ﹣>Llink =q ;
D.q ﹣>llink =p ﹣>llink;q ﹣>Rlink =q ;p ﹣>llink =q ;p ﹣>llink =q ;
【答案】C
4. 下列关于管道(Pipe)通信的叙述中, 正确的是( )
A. —个管道可实现双向数据传输
B. 管道的容量仅受磁盘容量大小限制
C. 进程对管道进行读操作和写操作都可以被阻塞
D. —个管道只能有一个读写进程或一个写进程对其操作
【答案】C
【解析】只有写进程才能对管道写入数据, 读进程对管道进行读取数据, 只能半双工通信, 即某一时刻只能单向传输。管道为空, 则读操作被堵塞, 而如果有写操作对管道进行写的话那就要堵塞了。那么C 正确
5. 设系统缓冲区和用户工作均采单, 从外读入1个数据块到系统缓冲区的时间为100, 从系统缓冲区读入1个数据块到用户工作区的时间为5, 对用户工作区中的1个数据块行分析的时间为90(如下图所示) 。进程从外设读入并分析2个数据块的最短时间是( )
图
A.200
B.295
C.300
D.390
【答案】C
【解析】数据块1从外设到用户工作区的总时间为105, 在这段时间中数据块2没有进行操作。在数据块1进行分析处理时, 数据块2从外设到用户工作区的总时间为105, 这段时间是并行的。再加上数据块2进行处理的时间90, 总共是300, 故答案为C 。
6. 对于循环队列( )。
A. 无法判断队列是否为空
B. 无法判断队列是否为满
C. 队列不可能满
D. 以上说法都不是
【答案】D
【解析】循环队列也会出现队列满的情况,并且循环队列也可以判断是否为空或满。至少可以通过两种方法进行判断:①另设一个布尔变量来区别队列是空还是满;②队满时,(rear+1)
font 。
7. 算法的计算量的大小称为计算的( )。
A. 效率
B. 复杂性
C. 现实性
D. 难度
【答案】B
【解析】算法复杂度通常分为时间复杂度和空间复杂度,算法的计算量的大小可以用时间复杂度衡量,即可以称为计算的复杂度。
8. 对有2个顶点e 条边且使用邻接表存储的有向图进行广度优先遍历, 其算法时间复杂度是( )。 A. B. C. D.
【答案】C 。
【解析】遍历图的过程实质上是对每个顶点查找其邻接点的过程。其耗费的时间则取决于所采用的存储结构。当用二维数组表示邻接矩阵图的存储结构时,
查找每个顶点的邻接点所需时间为
, 其中n 为图中顶点数。而当以邻接表作图的存储结构时, 找邻接点所需时间为0(e), 其中e 为无向图中边的数或有向图中弧的数。由此, 当以邻接表作存储结构时, 深度优先搜索遍历图的时间复杂度为。即可得出正确答案。
9. 循环两列放在一维数组中, end1指向队头元素, end2指向队尾元素的后一个位置。假设队列两端均可进行入队和出队操作, 队列中最多能容纳M-1个元素。初始时为空, 下列判断队空和队满的条件中, 正确的是( )
A. 队空:endl==end2; 队满:endl==(end2+l)modM
B. 队空Gendl==end2; 队满:Gend2==(endl+1)mod(M-1)
C. 队空Gend2==(endl+1)modM; 队满:Gendl==(end2+l)modM
D. 队空:
【答案】A
【解析】在循环队列中, 在少用一个元素空间的前提下, 可约定入队前, 测试尾指针在循环意义下加1后是否等于头指针, 若相等, 则队满。而队空的条件还是首尾指针是否相等。
10.用户在删除某文件的过程中, 操作系统不可能执行是( )
A. 删除此文件所在的目录
B. 删除与此文件关联的目录项
队满: