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

2017年武汉理工大学计算机科学与技术学院852数据结构(C语言版)考研导师圈点必考题汇编

  摘要

一、选择题

1. 在下面的排序方法中,辅助空间为

A. 希尔排序 B. 堆排序 C. 选择排序 D. 归并排序 【答案】D

2. 已知小根堆为8,15,10,21,34, 16,12,删除关键字8之后需重建堆,在此过程中,关键字之间的比较数是( )。

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

【答案】C

【解析】堆排序中,依次输出堆顶的最小值,然后重新调整堆,如此反复执行,便得到一个有序序列。本题中,删除堆顶元素8后将最后一个元素12置于堆顶,然后调整堆:首先与15比较,12小于15, 所以不用交换;然后与10比较,因为10小于12,所以交换10和12的位置;调 整后12再与16比较,12小于16,调整堆过程结束。因此12共与15、10、16进行了三次比较。

3. 下面关于哈希(Hash ,杂凑)查找的说法正确的是( )。

A. 哈希函数构造的越复杂越好,因为这样随机性好,冲突小 B. 除留余数法是所有哈希函数中最好的 C. 不存在特别好与坏的哈希函数,要视情况而定

D. 若需在哈希表中删去一个元素,不管用何种方法解决冲突都只要简单地将该元素删去即可 【答案】C

【解析】若数据结构中存在关键字和K 值相等的记录,则必定在不需要进行比

较便可直接取得所查记录。在此,称这个对应关系f 为哈希(Hash )函数,哈希函数的选择要视具体情况而定。

4. 从堆中删除一个元素的时间复杂度为( )。

第 2 页,共 53 页

的是( )。

的存储位置上,由此,

【答案】B

【解析】堆中删除一个元素,需要重新调整堆,其时间复杂度为

5. 最大容量为n 的循环队列,队尾指针是rear ,队头:front , 则队空的条件是( )。

A.

B.

C.

D. 【答案】B

【解析】循环队列队空的条件是:rear=front。循环队列队满的条件,通常采

来判定队满,其中

表示队列的长度。

6. 主机甲和乙已建立了TCP 连接,甲始终以MSS=1KB大小的段发送数据,并一直有数据发送;乙每收到一个数据段都会发出一个接收窗口为10KB 的确认段。若甲在t 时刻发生超时时拥塞窗 口为8KB , 则从t 时刻起,不再发生超时的情况下,经过10个RTT 后,甲的发送窗口是( )。

A.10KB B.12KB C.14KB D.15KB 【答案】A

【解析】发送窗口是接受窗口和拥塞窗口的最小值,这里接收窗口总是10KB 。拥塞窗口到那个时候是大于10KB 的,取最小值。

7. 在OSI 参考模型中,直接为会话层提供服务的是( )

A. 应用层 B. 表示层 C. 传输层 D. 网络层 【答案】C

【解析】OSI 参考模型中,下层直接为上层提供服务,而会话层的下层为传输层。

8. 就平均性能而言,目前最好的内排序方法是( )排序法。

A. 起泡 B. 希尔插入 C. 交换 D. 快速 【答案】D

【解析】快速排序的平均时间复杂度是复杂度也是

所需要的辅助存储为

所需要的辅助存储为

虽然堆排序的时间

看似堆排序比快速排序的性能好,但是需要注意

第 3 页,共 53 页

仅仅表示的是一个量级,

比如

的量级都为之所以说快排

最好,是在综合考虑的情况下。

9. —棵二叉树高度为h ,所有结点的度或为0或为2,则这棵二叉树最少有( )个结点。

A.2h

B.

C.

D. 【答案】B 【解析】此树满足哈夫曼树,除根节点外每层有两个节点。 10.n 个结点的正则二叉树中有每个结点的度或者为0或者为2的二叉树称为正则二叉树。( )个叶子。

【答案】D

【解析】二叉树结点总数

分别代表度为0,度为1,度为2的结点数)。

又在非空二叉树中

:且本题所给树为正则二叉树

,所

以因

11.主机甲和主机乙间已建立一个TCP 连接,主机甲向主机乙发送了两个连续的TCP 段,分别包含300字节和500字节的有效载荷,第一个段的序列号为200, 主机乙正确接收到两个段后,发送给主机甲的确认序列号是( )。

A.500 B.700 C.800 D.1000

【答案】D

【解析】TCP 使用滑动窗口流控协议,窗口大小的单位是字节,本题中分别包含300字节和500字节的有效载荷,第一个段的序列号为200, 那么确认序列号为200+300+500=1000。

12.下列选项中,降低进程优先级的合理时机是( )。

A. 进程的时间片用完

B. 进程刚完成1/0, 进入就绪队列 C. 进程长期处于就绪队列 D. 进程从就绪状态转为运行态 【答案】A

【解析】进程时间片用完可以降低其优先级,完成

的进程应该提升其优先级,处于就绪队

列等待调度的进程一般不会改变其优先级。进行这样的操作主要是为了改善交互式系统的响应时间,并均衡各个作业的公平性。采用时间片轮转技术主要为改善交互式用户的感受,使其觉得是

第 4 页,共 53 页