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

2017年北京联合大学计算机科学与技术801计算机综合之数据结构考研强化模拟题

  摘要

目录

2017年北京联合大学计算机科学与技术801计算机综合之数据结构考研强化模拟题(一).... 2 2017年北京联合大学计算机科学与技术801计算机综合之数据结构考研强化模拟题(二).. 13 2017年北京联合大学计算机科学与技术801计算机综合之数据结构考研强化模拟题(三).. 24 2017年北京联合大学计算机科学与技术801计算机综合之数据结构考研强化模拟题(四).. 35 2017年北京联合大学计算机科学与技术801计算机综合之数据结构考研强化模拟题(五).. 46

一、填空题

1. 数据结构是研讨数据的_____和_____以及它们之间的相互关系,并对与这种结构定义相应的_____,设计出相应的_____。

;算法 【答案】逻辑结构;物理结构;操作(运算)

2. 阅读下列程序,指出其功能,并写出空格处应填上的语句。

【答案】

【解析】本题是在哈希表ht[]中插入值为的元素,如该元素已在哈希表中,报告出错。

3. 顺序栈用存储数据,栈顶指针是top ,则值为x 的元素入栈的操作是_____。

【答案】

【解析】先判断栈是否满,如果不满,元素入栈。否则返回溢出信息。

4. 在循环队列中,队列长度为n ,存储位置从0到,编号,以rear 指示实际的队尾元素,现要在此队列中插入一个新元素,新元素的位置是( )。

【答案】

5. 线性表

【答案】(n -1)/2

【解析】删除第一个元素需要移动n -i 次,以此类推,删除最后一个元素需要移动0次。平均次数为

用数组表示,假定删除表中任一元素的概率相同,则删除一个元素

平均需要移动元素的个数是_____。

6. 对单链表中元素按插入方法排序的C 语言描述算法如下,其中L 为链表头结点指针。请填充算法中标出的空白处,完成其功能。

置空链表,然后将原链表结点逐个插入到有序表中

当链表尚未到尾,p 为工作指针

查P 结点在链表中的插入位置,这时q 是工作指针

将P 结点链入链表中

是q 的前驱,u 是下个待插入结点的指针 .

求REPLACE (S ,V , m )=_____。

【答案】

8. 对于双向链表,在两个结点之间插入一个新结点需修改的指针共_____个,单链表为_____个。

【答案】4; 2

9. 建立索引文件的目的是_____。

【答案】提高查找速度

10.执行顺序查找时,存储方式可以是_____,折半查找时,要求线性表_____,分块查找时要求线性表_____,而哈希表的查找,要求线性表的存储方式是_____。

【答案】顺序存储或链式存储;顺序存储且有序;块内顺序存储,块间有序;散列存储

【答案】(1)(2)(3)(4)(5) 7

二、选择题

11.设计一个判别表达式中左、右括号是否配对出现的算法,采用( )数据结构最佳。

A. 线性表的顺序存储结构 B. 队列

C. 线性表的链式存储结构 D. 栈

【答案】D

【解析】用栈更合适,如果是左括号,进找;如果是右括号,看栈顶是不是左括号,如果是, 则左括号出栈;否则不配对(可以直接结束算法)。处理完所有符号号,如果栈为空则配对成功。

12.以下与数据的存储结构无关的术语是( )。

A. 循环队列 B. 链表 C. 哈希表 D. 栈 【答案】D

【解析】循环队列体现线性表是以顺序存储。用散列法存储的线性表称散列表。链表说明线性表是以链式结构存储的。栈不能体现出是顺序还是链式存储结构。

13.在下图所示的平衡二叉树中,插入关键字48后得到一棵新平衡二叉树。在新平衡二叉树中,关键字37 所在结点的左、右子结点中保存的关键字分别是( )。

A.13、48 B.24、48 C.24、53 D.24、90 【答案】C

【解析】题目中,插入48以后,树根结点的平衡因子由-1变为-2, 失去平衡。这属于RL (先右后左)型平衡旋转,需做两次(先右旋后左旋转)旋转操作。过程如下图所示:

显然,在调整后的新平衡二叉树中,关键字37所在结点的左、右子结点中保存的关键字分别是24, 53。