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

2017年华东交通大学信息工程学院829数据结构考研仿真模拟题

  摘要

一、填空题

1. 文件可按其记录的类型不同而分成两类,即_____和_____文件。

【答案】操作系统文件;数据库

2. 设T 是一棵结点值为整数的二叉排序树,A 是一个任意给定的整数。free_tree在下面的算法中,(T )在对二叉排序树丁进行后序遍历时释放二又排序树T 的所有结点;

先在二叉排序树T 中查找值为A 的结点,根据查找情况分别进行如下处理:(1)若找不到值为A 的结点,则返回根结点的地址(2)若找到值为A 的结点,则删除以此结点为根的子树,并释放此子树中的所有结点,若值为A 的结点是查找树的根结点,删除后变成空的二叉树,则返否则返回根结点的地址。

【答案】

3. 组成串的数据元素只能是_____。

【答案】字符

4. 按LSD 进行关键字排序,除最次位关键字之外,对每个关键字进行排序时,只能用_____的排序方法。

【答案】稳定

5. 分别采用堆排序,快速排序,起泡排序和归并排序,对初态为有序的表,则最省时间的是_____算法,最费时间的是_____算法。

【答案】起泡;快速

,【解析】当初态为有序表时,冒泡排序只需要进行一趟比较即可,此时时间复杂度为〇(n )而快速排序算法需要比较的次数达到最大,时间复杂度为

6. 设m 、n 均为自然数,m 可表示为一些不超过n 的自然数之和,f (m , n )为这种表示方式的 数目。例f (5, 3)=5,有5种表示方式:3+2, 3+1+1,2+2+1,2+1+1+1, 1+1+1+1+1。

①以下是该函数的程序段,请将未完成的部分填入,使之完整。

②执行程序,f (6,4)=_____。 【答案】①1; 1; f (m ,n -1); n ②9

7. 二叉树的前序序列和中序序列相同的条件是_____。

【答案】空树或任何结点至多只有右子树的二叉树

【解析】前序遍历的顺序为根左右,中序遍历的顺序为左根右,因此若中序遍历和前序遍历序列相同,则任何结点都没有左子树。

8. 对n 个记录的表r[l..n]进行简单选择排序,所需进行的关键字间的比较次数为_____。

【答案】n (n-1)/2

【解析】第一次需要n-1次比较,第i 此需要n-i 此比较,所以共需要、n-l+n-2+...+l=n(n-l )/2。

9. 栈是_____的线性表,其运算遵循_____的原则。

;后进先出 【答案】操作受限(或限定仅在表尾进行插入和删除操作)

10.一个有2001个结点的完全二叉树的高度是_____。

【答案】11

【解析】

完全二叉树的高度

二、选择题

11.假设某计算机的存储系统由Cache 和主存组成。某程序执行过程中访存1000次,其中访问Cache 缺失(未命中)50次,则Cache 的命中率是( )。

A.5% B.9.5% C.50%

D.95% 【答案】D

【解析】Cache 的命中率次数,程序总访存次数

,其中

为访问Cache 的次数,

为访存主存的所以根据公

, 程序访存次数减去失效次数就是访问Cache 的次数

式可得:H=(1000-50)/1000=95%。

12.有向带权图如题图所示,若采用迪杰斯特拉(Dijkstra )算法求从源点a 到其他各顶点的最短路径,则得到的第一条最短路径的目标顶点是b ,第二条最短路径的目标顶点是c ,后续得到的其余各最短路径的目标顶点依次是( )。

题图有向带权图

A.d , e , f

B.e , d , f C.f , d , e D.f , e , d 【答案】C 。

【解析】本题主要考查Dijkstra 算法的思想和解题步骤。题目执行算法过程中各步的状态如下表所示。

执行Dijkstra 算法过程中各步的状态表,故后续目标顶点依次为f ,d , e 。

13.某计算机主存地址空间大小为256MB , 按字节编址。虚拟地空间大小为4GB ,采用页式存储管理,页面大小为4KB ,TLB (快表)采用全相联映射,有4个页表项,内容如下表所示。