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

2018年北京师范大学研究生院珠海分院879程序设计与数据结构[专业硕士]考研核心题库

  摘要

一、填空题

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

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

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

2. 求图的最小生成树有两种算法,_____算法适合于求稀疏图的最小生成树e

【答案】克鲁斯卡尔

【解析】克鲁斯卡尔算法是一种按权值的递增次序选择合适的边来构造最小生成树的方法,这种算法中,采用堆来存放边的集合,适合于边稀疏而顶点较多的图。

3. 在双向循环链表中,向P 所指的结点之后插入指针f 所指的结点,其操作是_____、_____、_____、_____。

【答案】f ﹣>next =p ﹣>next ;f ﹣>prior =p ;p ﹣>next ﹣>prior =f ;p ﹣>next =f ;

4. 有向图G=(V, E) ,其中

权d 。E(G)为

,则从源点0到顶点3的最短路径长度是_____,经过的中间顶点是_____。

【答案】50;4

5. 对于一个具有n 个结点的二叉树,当它为一棵_____二叉树时具有最小高度, 当它为一棵_____时,具有最大高度。

【答案】完全;只有一个叶结点的二叉树

6. 实现字符串拷贝的函数strcpv 为:

(_____)

【答案】s++=*t++或(*s++=*t++)!='\0’

,用三元组表示弧及弧上的

7. 循环队列的引入,目的是为了克服_____。

【答案】假溢出时大量移动数据元素

【解析】用数组实现队列时,如果不移动,随着数据的不断读写,会出现假满队列的情况。即尾数组已满但头数组还是空的。循环队列也是一种数组,引入循环队列,有效克服假溢出大量移动数据元素的问题。

8. G 是一个非连通无向图,共有28条边,则该图至少有_____个顶点。

【答案】9

【解析】求该非连通无向图的最少顶点数,则该图为一个孤立的顶点和一个完全连通图。

9. 已知二叉排序树的左右子树均不为空,则_____上所有结点的值均小于它的根结点值,_____上所有结点的值均大于它的根结点的值。

【答案】左子树;右子树

【解析】二叉排序树(binary sort tree)或者是一棵空树,或者是具有下列性质的二叉树:①若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;②若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;③它的左、右子树也分别为二叉排序树。

10.已知有序表为(12,18,24,35,47,50,62,83,90,115,134) 当用二分法查找90时,需次查找成功,查找47时_____成功,查找100时,需_____次才能确定不成功。

【答案】2; 4; 3

【解析】二分法查找元素次数列表

查找100是找到115就停止了。

11.数组的存储结构采用_____存储方式。

【答案】顺序存储结构

【解析】数组本身的存储结构是线性的,也就是说它是连续存储的。

12.在哈希函数中,p 值最好取_____。

【答案】小于等于表长的最大素数或不包含小于20的质因子的合数

【解析】在使用除留余数法时,对除数P 的选择很重要。若P 选的不好,容易产生同义词。一般情况下,可以选P 为质数或不包含小于20的质因素的合数。

二、判断题

13.线性表采用链表存储时,结点和结点内部的存储空间可以是不连续的。( )

【答案】 ×

【解析】对于链式存储,数据元素之间的存储地址不一定是相邻的,即结点的存储空间可以是不连续的。而结点内部的存储空间需要是连续的,因为它是一个完整的数据。

14.排序的稳定性是指排序算法中的比较次数保持不变,且算法能够终止。( )

【答案】×

【解析】排序的稳定性指:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,ri=rj,且ri 在rj 之前,而在排序后的序列中,ri 仍在ij 之前,则称这种排序算法是稳定的;否则称为不稳定的。

15.设模式串的长度为m ,目标串的长度为n ,当n ≈m 且处理只匹配一次的模式时,朴素的匹配(即子串定位函数) 算法所花的时间代价可能会更为节省。( )

【答案】 √

【解析】因为两个字符串的长度几乎相等,因此,在进行相应的匹配时,只需要定位父串的前几位即可。

16.二元查找树的任何结点的左右子树都是二元查找树。( )

【答案】√

【解析】二元查找树也称作二元排序树。二元查找树的性质:①若左子树不空,则左子树上所有结点的值均小于它的根结点的值;②若右子树不空,则右子树所有结点的值均大于它的根结点的值;③左右子树也分别为二元查找树。

17.内排序要求数据一定要以顺序方式存储。( )

【答案】×

【解析】由于待排序的记录数量不同,使得排序过程中涉及的存储器不同,可将排序方法分为两大类:一类 是内部排序;另一类是外部排序。因此,内部排序没有要求数据一定是以顺序方式存储。

18.KMP 算法的特点是在模式匹配时指示主串的指针不会变小。( )

【答案】 √

【解析】KMP 算法是一种字符串匹配的算法,KMP 算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。具体实现就是实现一个next ( )函数,函数本身包含了模式串的局部匹配信息。

19.若一个有向图无环,则它一定有唯一的拓扑序列。( )

【答案】×