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

2018年北京市培养单位计算机与控制学院863计算机学科综合(专业)之数据结构考研仿真模拟五套题

  摘要

一、填空题

1. 设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

2. 一棵有11个结点的满二叉树有_____个度为1的结点、有_____个分支(非终端) 结点和_____个叶子,该满二叉树的深度为_____。 【答案】或

【解析】满二叉树没有度为1的结点,度为0的结点等于度为2的结点个数+1。

3. 根据线性表的链式存储结构中每一个结点包含的指针个数,将线性链表分成_____和_____;而又根据指针的连接方式,链表又可分成_____和_____。

【答案】单链表;双链表;(动态) 链表;静态链表

【解析】线性表的链式存储结构根据每个结点包含的指针个数分为单链表和双链表,单链表只包含一个指针,指向后续元素,双链表包括两个指针,指向前一个元素和后续元素。根据指针的连接方式,链表可分为动态链表和静态链表。静态链表的指针指向下一个元素的编号,动态链表的指针指向下一个元素的物理位置。

4. 设正文串长度为n ,模式串长度为m ,则串匹配的KMP 算法的时间复杂度为_____。

【答案】O(m+n)

5. 无用单元是指_____,例_____

【答案】用户不再使用而系统没有回收的结构和变量;

6. 遍历图的过程实质上是_____,广度优先遍历图的时间复杂度____;深度优先遍历图的时间复杂度_____,两者不同之处在于_____,反映在数据结构上的差别是_____。

【答案】查找顶点的邻接点的过程;0(n+e);0(n+e);访问顶点的顺序不同;队列和栈

【解析】广度优先遍历图使用队列这种数据结构,深度优先遍历图使用栈这种数据结构。

7. 在基于关键字比较且时间为_ 的排序中,若要求排序是稳定的,则可选用_____排序;若要求就地排序(及辅助空间为O(1)),则可选用_____排序。

【答案】归并;堆

8. 关键码序列(Q,H ,C ,Y ,Q ,A ,M ,S ,R ,D ,F ,X) ,要按照关键码值递增的次序进行排序,若采用初始步长为4的希尔排序法,则一趟扫描的结果是_____; 若采用以第一个元素为分界元素的快速排序法,则扫描一趟的结果是_____。

【答案】(Q,A ,C ,S ,Q ,D ,F ,X ,R ,H ,M ,Y) ; (F,H ,C ,D ,a ,A ,M ,Q ,R ,S ,Y ,X)

【解析】希尔排序的基本思想是:先将整个待排记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行一次直接插入排序。

快速排序(quick sort) 的基本思想是,通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。

9. VSAM(虚拟存储存取方法) 文件的优点是:动态地_____,不需要文件进行_____,并能较快地_____进行查找。

【答案】分配和释放存储空间;重组;对插入的记录

10.抽象数据类型的定义仅取决于它的一组_____,而与_____无关,即不论其内部结构如何变化,只要它的_____不变,都不影响其外部使用。

【答案】逻辑特性;在计算机内部如何表示和实现;数学特性

二、判断题

11.程序一定是算法。( )

【答案】 ×

【解析】一个程序不一定满足有穷性。而算法是对问题的解,用程序设计语言来实现来描述,这时算法就是一个程序。

12.串是一种数据对象和操作都特殊的线性表。( )

【答案】 √

【解析】串是一种操作特殊的线性表,其特殊性主要体现在数据元素是一个字符。在内存中,一份文本都可以看做是一个字符串,而每一行都可以看做是其子串。

13.串长度是指串中不同字符的个数。( )

【答案】 ×

【解析】不是,串长度是指串中字符的总个数。需要注意的是,在计算字符串的长度时,不要漏掉了空格。

14.数组是同类型值的集合。( )

【答案】 ×

【解析】数组是具有相同性质的数据元素的集合,数据元素不仅有值,还有下标。因此,可以说数组是元素值和下标构成的偶对的有穷集合。

15.即使对不含相同元素的同一输入序列进行两组不同的合法的入栈和出栈组合操作,所得的输出序列也一定相同。( )

【答案】 ×

【解析】栈只是一种先入后出的存储结构。对于出栈、入栈的元素不进行修改,因此,输入序列的元素不相同,不可能得到相同的输出序列。

16.队列和栈都是运算受限的线性表,只允许在表的两端进行运算。( )

【答案】 ×

【解析】栈只能在一端进行操作,队列可以在表的两端进行运算。

17.文件系统采用索引结构是为了节省存储空间。( )

【答案】×

【解析】是为了缩短查找的时间,牺牲了一部分存储空间。

18.2,n ,a 2,a n

若…,…,桟的输入序列是1,输出序列是a 1,

( )

【答案】 ×

【解析】出找序列不一定满足a 1>a i+1... >a n ,比如1进栈,然后出找,a 1=1。

19.哈希表与哈希文件的唯一区别是哈希文件引入了“桶”的概念( )

【答案】×

【解析】哈希文件是使用一个函数(算法) 来完成一种将关键字映射到存储器地址的映射,根

则有:。。