2017年厦门大学能源学院845数据结构考研冲刺密押题
● 摘要
一、填空题
1. 串是一种特殊的线性表,其特殊性表现在_____; 串的两种最基本的存储方式是_____、_____; 两个串相等的充分必要条件是_____。
【答案】其数据元素都是字符;顺序存储;链式存储;串的长度相等且两串中对应位置的字符也相等
2. 二叉树的前序序列和中序序列相同的条件是_____。
【答案】空树或任何结点至多只有右子树的二叉树
【解析】前序遍历的顺序为根左右,中序遍历的顺序为左根右,因此若中序遍历和前序遍历序列相同,则任何结点都没有左子树。
3. 设单链表的结点结构为
为指针域,已知指针px 指向单链表中data 为x 的结
_____;点,指针py 指向data 为y 的新结点,若将结点y 插入结点x 之后,贝懦要执行以下语句:
_____;
【答案】
4. —个字符串中_____称为该串的子串。
【答案】任意个连续的字符组成的子序列
5. 阅读下列程序,指出其功能,并写出空格处应填上的语句。
第 2 页,共 52 页
【答案】
【解析】本题是在哈希表ht[]中插入值为的元素,如该元素已在哈希表中,报告出错。 6. 如下的算法分别是后序线索二叉树求给定结点node 的前驱结点与后继结点的算法,请在算法,其空格处填上正确的语句。设线索二叉树的结点数据结构为(lflag ,lcft ,data ,right ,rflag )中:lflag=0,lcft 指向其左孩子,lflag=1,left 指向其前驱:rflag=0,right 指向其右孩子,rflag=1,right 指向其后继。
Prior (node , x ) { if(node !=null)
If ( (1) ) *x=node->right;else * x-node->left;
}
next (bt , node, x )/*bt是二叉树的树根*/ { (2) ;
if (node->rflag)(3); else {do t=*x;;
while (*x==node ); *x=t; } }
【答案】nodc->rflag==O; *x=ht; *x=nodc->right; prior (t , X )
7. 实现字符串拷贝的函数strcpy 为:
【答案】
8. 顺序存储结构是通过_____表示元素之间的关系的;链式存储结构是通过_____表示元素之间的关系的。
【答案】物理上相邻;指针
【解析】顺序存储结构是通过物理位置表示元素之间的关系的,链式存储结构通过指针表示元素之间的关系。
9. 中缀式运算结果为_____。
【答案】
【解析】中缀式相当于中序遍历,前缀式相当于前序遍历,后缀式相当于后序遍历。
10.设正文串长度为n ,模式串长度为m ,则串匹配的KMP 算法的时间复杂度为_____。
【答案】
第 3 页,共 52 页
对应的前缀式为_____,若则后缀式的
11.设有两个算法在同一机器上运行,其执行时闻分别为_____。
【答案】15
要使前者快于后者,n 至少为
【解析】当时,而
,时,
12.检索是为了在文件中寻找满足一定条件的记录而设置的操作。检索可以按_____检索。也可以按_____检索;按_____检索又可以有_____检索和_____检索。
【答案】关键字;记录号;记录号;顺序;直接
二、选择题
13.一个C 语言程序在一台32位机器上运行。程序中定义了3个变量x 、Y 和z ,其中x 和z 为int 型,Y 为short 型。当x=127,Y=-9时,执行赋值语句z=x+Y后,x 、Y 和z 的值分别是( )。
A.x=0000007FH, Y=FFF9H, z=00000076H B.x=0000007FH, Y=FFF9H, z=FFFF0076H C.x=0000007FH, Y=FFF7H, z=FFFF0076H D.x=0000007FH, Y=FFF7H, z=00000076H
【答案】D
【解析】当两个不同长度的数据,要想通过算术运算得到正确的结果,必须将短字长数据转换成长字长数据,这被称为“符号扩展”。例如,x 和z 为int 型,数据长32位,Y 为short 型,数据长16位,因此首先应将y 转换成32位的数据,然后再进行加法运算。运算采用补码的形式,而x 的补码是0000007FH , Y 的补码是FFFFFFF7H , 所以x+Y=00000076H。
14.已知一棵有2011个结点的树,其叶结点个数为116, 该树对应的二叉树中无右孩子的结点个数是( )。
A.115 B.116 C.1895 D.1896 【答案】D
【解析】每个非终端结点转换成二叉树后都对应一个无右孩子的结点(因为一个非终端结点,另外,树根结点转至少有一个孩子结点,其最右边的孩子结点转换成二叉树后一定没有右孩子)
换成二叉树后也没有右孩子。题目中树的总结点数是2011,叶结点个数是116, 则非终端结点个数是2011-116=1895, 则该树对应的二叉树中 无右孩子的结点个数是1895+1=1896。
15.某以太网拓扑及交换机当前转发表如下图所示,主机向主机发送1个数据帧,主机
A.
第 4 页,共 52 页
收到该帧后,向主机发送一个确认帧,
交换机对这两个帧的转发端口分别是( )