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

2018年中北大学计算机与控制工程学院821数据结构与算法之数据结构考研仿真模拟五套题

  摘要

一、单项选择题

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

A. 应用层

B. 表示层

C. 传输层

D. 网络层

【答案】C

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

2. 假定变量i 、f 和d 的数据类型分为int 、float 和double(int用补码表示, float 和double 分别用IEEE754单精度和双精度浮点数格式表示) , 已知

器中执行下列关系表达式, 则结果为“真”的是( )。

(Ⅰ)

(Ⅱ)

(Ⅲ)

(Ⅳ)

A. 仅Ⅰ和Ⅱ

B. 仅Ⅰ和Ⅲ

C. 仅Ⅱ和Ⅲ

D. 仅Ⅲ和Ⅳ

【答案】B

【解析】数据类型不同的数据在运算之前需要进行数据类型的转换。Ⅱ中, f 的数据类型从float 转换为int 时, 小数点后面4位会丢失, 故Ⅱ的结果不为真; Ⅳ中, d+f时需要对阶, 对阶后f 的尾数有效位被舍去而变为0, 故d+f仍然为d , 再减去d 后结果为0, 故Ⅳ的结果也不为真。

Ⅰ和Ⅱ进行数据类型的转换的时候并没有改变其值。

3. 在一个采用CSMA/CD协议的网络中,传输介质是一根完整的电缆,传输速率为1Gbps ,电缆中的信号传播速度是200000km/s.若最小数据帧长度减少800bit ,则最远的两个站点之间的距离至少需要( ).

A. 增加160m

第 2 页,共 78 页 。若在32位机

B. 增加80m

C. 减少160m

D. 减少80m

【答案】D

【解析】以太网采用CSMA/CD访问协议,在发送的同时要进行冲突检测,这就要求在能检测出冲突的最大时间内数据包不能够发送完毕,否则冲突检测不能有效地工作。所以,当发送的数据包太短时必须进行填充。最小帧长度=碰撞窗口大小×报文发送速率,本题最小数据帧长度

89减少800b , 那么碰撞的窗口也要减少,因此距离也要减少,从而(800×2×l0)/(l×l0) =160m ,由于

时间延时存在两倍的关系,因此减少的距离为80m 。

4. 下列关于最小生成树的叙述中, 正确的是( )。

Ⅰ. 最小生成树的代价唯一

Ⅱ. 所有权值最小的边一定会出现在所有的最小生成树中

Ⅲ. 使用普里姆(Prim)算法从不同顶点开始得到的最小生成树一定相同

IV. 使用普里姆算法和克鲁斯卡尔(Kmskal)算法得到的最小生成树总不相同

A. 仅Ⅰ

B. 仅Ⅱ

C. 仅Ⅰ、Ⅲ

D. 仅Ⅱ、Ⅳ

【答案】A 。

【解析】当图中存在相同权值的边时, 其最小生成树可能是不唯一的, 但最小生成树的代价一定是相同的, 所以说法Ⅰ正确。从n 个顶点的连通图中选取n-1条权值最小的边可能构成回路, 所以说法Ⅱ错误。

当某个顶点有权值相同的边, 使用普里姆(Prim)算法从不同顶点开始得到的最小生成树并不一定相同, 所以说法Ⅲ错误。当最小生成树不唯一时, 使用普里姆算法和克鲁斯卡尔(Kmskal)算法得到的最小生成树可能相同, 也可能不同, 所以说法Ⅳ错误。由此可得出正确答案。

5. 图的BFS 生成树的树高比DFS 生成树的树高( )。

A. 小或相等

B. 小

C. 大或相等

D. 大

【答案】A

【解析】BFS 称作广度优先搜索,DFS 称作深度优先搜索。广度优先搜索类似与二叉树的层序遍历算法,深度优先搜索类似于树的先序遍历。因为深度优先搜索算法遵循的策略是尽可能的“深”地搜索一个图。所以图的BFS 生成树的树髙比DFS 生成树的树高小或者相等。

第 3 页,共 78 页

6. 已知小根堆为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进行了三次比较。

7. 已知字符串S 为“abaabaabacacaabaabcc ”, 模式串t 为“abaabc ”, 采用KMP 算法进行匹配, 第一次出现“失配”(

A.i=l, j=0

B.i=5, j=0

C.i=5, j=2

D.i=6, j=2

【答案】C

【解析】模式匹配(KMP)算法对普通的暴力匹配的改进在于:每当匹配过程中匹配失败时, 主串(本题为S) 的指针(i)不需要回溯, 而是利用已经得到的“部分匹配”的结果将模式串(t)向右“滑动”尽可能远的一段距离后, 继续进行比较。模式串“滑动”的距离是由模式串(t)本身决定的, 即t

的子串

中前缀串和后缀串相等的最长长度。本题中第一次失配i=5, 字串为“abaab”, 其相等且最长的前后缀为“ab”, 一次下一个j=2。

8. 假定编译器规定int 和short 类型长度分别为32位和16位, 执行下列C 语言语句:

;

A.00007FFAH

B.0000FFFAH

C.FFFF7FFAH

D.FFFFFFFAH

【答案】B 。

X 和y 均为无符号数, 其中X 为16位, y 为32位, 将16位无符号数转化成32位无符【解析】

号数, 前面要补零。因为X=65530=FFFAH, 所以y=0000FFFAH。

9. 若需在的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是( )。

A. 快速排序

B. 堆排序

第 4 页,共 78 页 ) 时, i=j=5, 则下次开始匹配时, i 和j 的值分别是( )。 :得到y 的机器数为( )。