当前位置:问答库>考研试题

2017年北京信息科技大学经管学院817数据结构和C语言之数据结构考研导师圈点必考题汇编

  摘要

一、选择题

1. TCP/IP参考模型的网络层提供的是( )。

A. 无连接不可靠的数据报服务 B. 无连接可靠的数据报服务 C. 有连接不可靠的虚电路服务 D. 有连接可靠的虚电路服务 【答案】A

【解析】TCP/IP的网络层向上只提供简单灵活的、无链接的、尽最大努力交付的数据服务,因此答案是A 。

2. 下面关于B 和B+树的叙述中,不正确的是( )

A.B 树和B+树都是平衡的多叉树 B.B 树和B+树都可用于文件的索引结构 C.B 树和B+树都能有效地支持顺序检索 D.B 树和B+树都能有效地支持随机检索 【答案】C

【解析】B 树是一种平衡的多分树,通常我们说m 阶的B 树,它必须满足如下条件:①每个结点至多有m 个子结点;②除根结点和叶结点外,其它每个结点至少有个子结点;③若根结点不是叶子结点,则至少有两个子结点;④所有的叶结点在同一层;⑤有k 个子结点的非根结点恰好包含k-1个关键码。B+树是B 树的一种变形树,它与B 树的差异在于:有k 个子结点的结点必然有k 个关键码;非叶结点仅具有索引作用,跟记录有关的信息均存放在叶结点中。其中B 树适合与随即检索,不适合于顺序检索,所以C 项错误。

3. 响应外部中断的过程中,中断隐指令完成的操作,除保护断点外,还包括( )。

I. 开关中断II. 保存通用寄存器的内容III. 形成中断服务程序入口地址并送PC A. 仅I 、II B. 仅 I 、III C. 仅 II 、III D.I 、II 、III 【答案】B 。

【解析】中断隐指令完成的操作有3个:①保存断点;②关中断;③引出中断服务程序(形

成中断服务程序入口地址并送PC )。而保存通用寄存器内容的操作是由软件来实现,不是由中断隐指令实现的。

4. 数据链路层采用选择重传协议(SR )传输数据,发送方已发送了0H3号数据倾,现已收到1号帧的确认,而0、2号帧依次超时,则此时需要重传的帧数是( )。

A.1 B.2 C.3 D.4

【答案】B

【解析】在选择重传协议中,接收方逐个地确认正确接收的分组,不管接收到的分组是否有序,只要正确接 收就发送选择ACK 分组进行确认。因此选择重传不支持累积确认,要特别注意其与GBN 协议的区别。本题收到1号帧的确认,说明1号帧正确接收,0和2号帧依次超时,因此必须重传,然而3号帧尚未超时,是否正确接收未知,故不用重传,因此必须重传0和2号帧,答案是B 。

5. 对n 个记录的线性表进行快速排序为减少算法的递归深度,以下叙述正确的是( )。

A. 每次分区后,先处理较短的部分 B. 每次分区后,先处理较长的部分 C. 与算法每次分区后的处理顺序无关 D. 以上三者都不对 【答案】A

【解析】令递归函数为f ,第一次进行递归函数认为递归深度为1,以后从深度为n 的递归函数f 中再调用递归函数f ,此时深度为整个f 的最大深度为递归深度。

6. 折半查找的时间复杂性为( )。

【答案】D

【解析】顺序查找的事件复杂度为度为

因为折半查找是查找效率最高的算法,它的事件复杂

7. 在对n 个元素的序列进行排序时,堆排序所需要的附加存储空间是( )。

【答案】B 【解析】堆排序需要一个空间用于交换,因此堆排序所需要的附加存储空间为

8. 下列指令中,不能在用户态执行的是( )

A.trap 指令 B. 跳转指令

C. 后栈指令 D. 关中断指令 【答案】D

【解析】关中断指令必须在和心态才能执行,trap 指令可以在用户态下执行,执行了就转到和心态,跳转与退栈指令都是可以在用户态下执行的指令。

9. 有两个并发执行的进程P1和P2, 共享初值为1的变量x 。P1对x 加1, P2对x 减1。加1和减1操作的指令序列分别如下所示。

//取x 到寄存器R1中

两个操作完成后,2的值( )。 A. 可能为-1或3 B. 只能为1 C. 可能为0、1或2 D. 可能为-1、0、1或2 【答案】C

【解析】这是在数据库中常有的操作。为保证数据的正确,避免产生错误,系统必须保证数据的同步。而保证数据的同步一般采取加锁的方法,让进程P1和P2互斥访问共享变量X 。当然用信号量和P 、V 操作也是可以 保证互斥操作,达到数据同步的。本例中,由于没有采取保证数据同步的相应措施,则最后结果就会出现差错。 例如,当正常情况下,进程P1和P2先后对x 操作,可以看到x 值的变化为初始1→2→1的过程,若P2, P1先后操作,则x 值的变化为初始1→0→1,这是正确的。若考虑一种并发的情况,进程P1和P2先后执行了取数load 的操作,它们得到的x 值均为1,运算后,P1和P2的x 值分别为2和0, 此时要看哪个进程后执行存数store 的 操作了,哪个进程后操作,结果就是那个进程的x 值,所以可能的结果为0或2, 加上前面正确的x 值1, 则可能的结果就有3种了。

10.—

组记录的关键码为

准得到的一次划分结果为( )。

【答案】C

【解析】快速排序是将待排记录分割成独立的两部分,其中一部分的关键字均比另一部分记录的关键字小。

第一次比较:46比84小,不交换; 第二次比较:40比46小,交换,此时为

则利用快速排序的方法,以第一个记录为基