2018年北京语言大学语言智能与技术825数据结构与程序设计之数据结构考研核心题库
● 摘要
一、填空题
1. 当两个栈共享一存储区时,栈利用一维数组stack(1,,1) 表示,两栈顶指针为top[l]与top[2],则当栈1空时,top[l]为_____,栈2空时,top[2]为_____,栈满时为_____。
【答案】0;n+1;top[l]+l=top[2]
【解析】共享栈的栈底在共享存储区的两端,当栈满时栈顶相邻。
2. 无用单元是指_____,例_____
【答案】用户不再使用而系统没有回收的结构和变量;
3. 在单链表L 中,指针P 所指结点有后继结点的条件是_____
【答案】P ﹣>next! =NULL
【解析】指针所指节点的指针域所指向的元素非空,说明该指针所指节点有后继结点。
4. 栈是_____的线性表,其运算遵循_____的原则。
【答案】操作受限(或限定仅在表尾进行插入和删除操作) ;后进先出
5. 二叉树的前序序列和中序序列相同的条件是_____。
【答案】空树或任何结点至多只有右子树的二叉树
【解析】前序遍历的顺序为根左右,中序遍历的顺序为左根右,因此若中序遍历和前序遍历序列相同,则任何结点都没有左子树。
6. 在双向循环链表中,向P 所指的结点之后插入指针f 所指的结点,其操作是_____、_____、_____、_____。
【答案】f ﹣>next =p ﹣>next ;f ﹣>prior =p ;p ﹣>next ﹣>prior =f ;p ﹣>next =f ;
7. VSAM(虚拟存储存取方法) 文件的优点是:动态地_____,不需要文件进行_____,并能较快地_____进行查找。
【答案】分配和释放存储空间;重组;对插入的记录
8. 设单链表的结点结构为(data,next) ,next 为指针域,已知指针px 指向单链表中data 为x 的结点,指针py 指向data 为y 的新结点,若将结点y 插入结点x 之后,则需要执行以下语句: _____;_____;
【答案】py ﹣>next =px ﹣>next ;px ﹣>next =py
9. 抽象数据类型的定义仅取决于它的一组_____,而与_____无关,即不论其内部结构如何变化,只要它的_____不变,都不影响其外部使用。
【答案】逻辑特性;在计算机内部如何表示和实现;数学特性
10.若用n 表示图中顶点数目,则有_____条边的无向图成为完全图。 【答案】
. 。 【解析】无向完全图中任意一个顶点都和其他n -1个顶点都有一条边,即为n(n-1) 。又因为每条边重复出现两次,所有无向完全图的边数为
11.—个有2001个结点的完全二叉树的高度是_____。
【答案】11
【解析】完全二叉树的高度
12.
【答案】5
13.数组的存储结构采用_____存储方式。
【答案】顺序存储结构
【解析】数组本身的存储结构是线性的,也就是说它是连续存储的。
14.如果按关键码值递增的顺序依次将关键码值插入到二叉排序树中,则对这样的二叉排序树检索时,平均比较次数为_____。 【答案】
【解析】如果关键码是排好序的,构建二叉排序树就会形成一个单支树,它的查找效率和顺序查找效率一样为。
15.实现字符串拷贝的函数strcpv 为:
(_____)
【答案】s++=*t++或(*s++=*t++)!='\0’
=_____
二、判断题
16.由于希尔排序的最后一趟与直接插入排序过程相同,因此前者一定比后者花费的时间更多。( )
【答案】×
【解析】希尔排序把序列分成很多小序列,对于直接插入排序,记录少时的效率会大大提高。并且序列在基本有序的情况下,直接插入排序也会提高。
17.如果数据元素保持有序,则查找时就可以采用折半查找方法。( )
【答案】×
【解析】采用折半查找的条件是数据元素有序且存储方式为顺序存储,对于常见的链式存储,在进行查找时主要依靠指针来操作。
18.在一个设有头指针和尾指针的单链表中,执行删除该单链表中最后一个元素的操作与链表的长度无关。( )
【答案】 ×
【解析】必须从头指针开始,查找到尾指针所指结点的前驱结点的指针。
19.顺序存储方式的优点是存储密度大,且插入、删除运算效率高。( )
【答案】 ×
【解析】前者正确,后者错误。顺序存储方式在插入、删除元素时需要挪动大量的元素,执行效率较低。
20.堆肯定是一棵平衡二叉树。( )
【答案】×
【解析】堆是n 个元素的序列,排序树,更不会是平衡二叉树。
可以看成是完全二叉树,但相对于根并无左小右大的要求,故其既不是二叉
21.拓扑排序的有向图中,最多存在一条环路。( )
【答案】×
【解析】要进行拓扑排序,需要满足一个条件为:若顶点A 在序列中排在顶点B 的前面,则在图中不存在顶点B 到顶点A 的路径。如果是一个有环图,则不能满足这个条件,所以拓扑排序的有向图中不能存在环路。
22.若中序遍历平衡的二叉排序树,可得到排好序的关键码序列。( )
【答案】√
【解析】二叉排序树对于每一个结点,它的左子树的所有结点的值都小于这个结点的值,而它的右子树的所有结点的值都大于这个结点的值。而釆用中序遍历,遍历顺序为左根右,因此可以得到按增序排列的关键码序列。
相关内容
相关标签