2018年郑州大学联合培养单位黄淮学院945软件工程专业基础综合[专业硕士]之数据结构考研强化五套模拟题
● 摘要
一、单项选择题
1. 串的长度是指( )。
A. 串中所含不同字母的个数
B. 串中所含字符的个数
C. 串中所含不同字符的个数
D. 串中所含非空格字符的个数
【答案】B
【解析】串中字符的数目n 称为字符的长度,不必考虑其中单个字符是否相等。
2. 用户程序发出磁盘请求后, 系统的正确处理流程是( )。
A. 用户程序—系统调用处理程序—中断处理程序—设备驱动程序
B. 用户程序—系统调用处理程序—设备驱动程序—中断处理程序
C. 用户程序—设备驱动程序—系统调用处理程序—中断处理程序
D. 用户程序—设备驱动程序—中断处理程序—系统调用处理程序
【答案】B
【解析】对于一次设备的调用, 操作系统为用户准备了系统调用的接口, 当用户使用设备时, 首先在用户程序中发起一次系统调用, 操作系统的内核接到该调用请求后调用处理程序进行处理, 根据调用格式和形参, 再转到相应的设备驱动程序去处理; 大部分设备在运行时是需要时间的, 所以设备驱动程序会以中断方式驱动设备, 即设置好控制寄存器参数和中断向量等参数后阻塞自己; 当设备准备好或所需数据到达后设备硬件发出中断, 设备驱动程序唤醒, 将数据按上述调用顺序逆向回传到用户程序中, 或继续驱动设备执行下一条指令。因此, 正确的顺序应该是用户到系统调用到驱动到中断处理。中断处理处于最底层。
3. 下列关于管道(Pipe)通信的叙述中, 正确的是( )
A. —个管道可实现双向数据传输
B. 管道的容量仅受磁盘容量大小限制
C. 进程对管道进行读操作和写操作都可以被阻塞
D. —个管道只能有一个读写进程或一个写进程对其操作
【答案】C
【解析】只有写进程才能对管道写入数据, 读进程对管道进行读取数据, 只能半双工通信, 即某
一时刻只能单向传输。管道为空, 则读操作被堵塞, 而如果有写操作对管道进行写的话那就要堵塞了。那么C 正确
4. 下列关于无向连通图特性的叙述中,正确的是( ).
(1)所有的顶点的度之和为偶数
(2)边数大于顶点个数减1
(3)至少有一个顶点的度为1
A. 只有(1)
B. 只有(2)
C. (1)和(2)
D.(1)和(3)
【答案】A
【解析】在图中,
顶点的度之和与边的数目满足关系式:(n为图的总结点数,e 为总边数) ,因此, (1)项正确. 对于(2)、(3)项中的特性不是一般无向连通图的特性,可以轻松地举出反例.“至少有一个顶点的度为1”的反例如下图1所示,“边数大于顶点个数减1”的反例如下图2所示
.
图
1
图2
5. 若串S ='software'%其子串的数目是( )。
A.8
B.37
C.36
D.9
【答案】B
【解析】子串的定义是:串中任意个连续的字符组成的子序列,并规定空串是任意串的子串,任意串是其自身的子串。若字符串长度为n(n>0) ,长为n 的子串有1个,长为n ﹣1的子串有2个,长为n ﹣2的子串有3个,...... ,长为1的子串有n 个。由于空串是任何串的子串,所以本题的答案为:8*(8+1)/2十1=37。故选B 。
6. 有n(n>0) 个分支结点的满二叉树的深度是( )。
A.n 2﹣l
B.log 2(n+1) +1
C.log 2(n+1)
D.log 2(n—1)
【答案】C
【解析】满二叉树的结点总数=分支的结点总数+非分支的结点总数。由于此树为满二叉树,
所以非分支的结点总数为1,所以满二叉树共有n +1个结点,所以满二叉树的深度为log 2 (n+1) 。
7. 下列调整中, 不可能导致饥饿现象的是( )
A. 时间片转移
B. 静态优先及调度
C. 非抢占式作业优先
D. 抢占式短作业优先
【答案】A
【解析】时间片转移方法能在一个周期内使每个进程都得到一个时间片的CPU 使用时间, 不会产生饥饿的现象, 其余三个都会产生饥饿。
8. 已知序列25, 13, 10, 12, 9是大根堆, 在序列尾部插入新元素18, 将其再调整为大根堆, 调整过程中元素之间进行的比较次数是( )。
A.1
B.2
C.4
D.5
【答案】B
【解析】对堆插入或删除一个元素, 有可能不满足堆的性质, 堆被破坏, 需要调整为新堆。
(1)为原堆,
(2)为插入18后,
(3)比较10与18, 交换后,
(4)比较25与18, 不交换, 即为调整后的新的大根堆。
因此调整过程中元素之间进行的比较次数为2。