2018年新疆维吾尔自治区培养单位新疆天文台862计算机学科综合(非专业)之数据结构考研基础五套测试题
● 摘要
一、填空题
1. 从平均时间性能而言,_____排序最佳。
【答案】快速
【解析】快速算法的平均时间复杂度为nlogn 。
2. 设单链表的结点结构为(data,next) ,next 为指针域,已知指针px 指向单链表中data 为x 的结点,指针py 指向data 为y 的新结点,若将结点y 插入结点x 之后,则需要执行以下语句: _____;_____;
【答案】py ﹣>next =px ﹣>next ;px ﹣>next =py
3. VSAM(虚拟存储存取方法) 文件的优点是:动态地_____,不需要文件进行_____,并能较快地_____进行查找。
【答案】分配和释放存储空间;重组;对插入的记录
4. 在哈希函数中,p 值最好取_____。
【答案】小于等于表长的最大素数或不包含小于20的质因子的合数
【解析】在使用除留余数法时,对除数P 的选择很重要。若P 选的不好,容易产生同义词。一般情况下,可以选P 为质数或不包含小于20的质因素的合数。
5. 阅读下列程序说明和程序,填充程序中的_____。
【程序说明】本程序完成将二叉树中左、右孩子交换的操作。交换的结果如下所示。
本程序采用非递归的方法,设立一个堆栈stack 存放还没有转换过的结点,它的栈顶指针为tp 。交换左、右子树的算法为:
(1)把根结点放入堆栈。
(2)当堆栈不空时,取出栈顶元素,交换它的左、右子树,并把它的左、右子树分别入栈。
(3)重复(2)直到堆栈为空时为止。
第 2 页,共 74 页
【答案】
【解析】本题主要使用堆栈完成了二叉树左右子树交换的操作。首先根结点进栈,然后判断栈是否为空,如果不为空,则取栈顶元素,交换取出结点的左右指针。并将左右指针分别进栈,重复这一操作。完成二叉树左右孩子的交换。
6. 已知;;ASSIGN(S,U) ;ASSIGN(V,SUBSTR(S,INDEX(S,t) ,LEN(t)+1))
:
【答案】 ,求REPLACE(S,V ,m) =_____。
7. 在顺序存储的二叉树中,编号为i 和j 的两个结点处在同一层的条件是_____。 【答案】
要加“虚结点”。
设编号为i 和j 的结点在顺序存储中的下标为s 和t , 则结点i 和j 在同一层上的条件是
。
8. 对于一个具有n 个结点的二叉树,当它为一棵_____二叉树时具有最小高度, 当它为一棵_____时,具有最大高度。
【答案】完全;只有一个叶结点的二叉树
9. 在双向循环链表中,向P 所指的结点之后插入指针f 所指的结点,其操作是_____、_____、_____、_____。
【答案】f ﹣>next =p ﹣>next ;f ﹣>prior =p ;p ﹣>next ﹣>prior =f ;p ﹣>next =f ;
10.对n 个记录的表
【答案】n (n-1) /2
【解析】第一次需要n -1次比较,第i 此需要n -i 此比较,所以共需要
。进行简单选择排序,所需进行的关键字间的比较次数为_____。 【解析】用顺序存储结构存储二叉树时,要按完全二叉树的形式存储,非完全二叉树存储时,
二、单项选择题
11.对关键码序列28,16,32,12,60,2,5,72快速排序,从小到大一次划分结果为( )。
A.(2,5,12,16)26(60,32,72)
B.(5,16,2,12)28(60,32,72)
C.(2,16,12,5)28(60,32,72)
D.(5,16,2,12)28(32,60,72)
第 3 页,共 74 页
【答案】B
【解析】快速排序是将待排记录分割成独立的两部分,其中一部分的关键字均比另一部分记录的关键字小。
第一次比较:28比72小,不交换;
第二次比较:28比5大,交换,此时为(5,16,32,12,60,2,28,72) ;
第三次比较:16比28小,不交换;
第四次比较:32比28大,交换,此时为(5,16,28,12,60,2,32,72) ;
第五次比较:28比2大,交换,此时为(5,16,2,12,60,28,32,72) ;
第六次比较:28比12大,不交换;
第七次比较:28比60小,交换,此时为(5,16,2,12,28,60,32,72) ;
一次划分结束。
12.在虚拟存储管理中, 地址变换机构将逻辑地址变换为物理地址, 形成该逻辑地址的阶段是( )。
A. 编辑
B. 编译
C. 链接
D. 装载
【答案】B
【解析】程序的编辑阶段一般都是程序员能够识别的高级语言或低级语言的文本, 不涉及到任何与计算机运行相关的事; 编译是由编译程序将用户源代码编译成若干个目标模块, 源地址编译成目标程序时, 会形成逻辑地址; 链接是由链接程序将编译后形成的一组目标模块, 以及所需库函数链接, 形成完整的装入模块; 装入是由装入程序将装入模块装入内存。
13.相对于微程序控制器,硬布线控制器的特点是( ).
A. 指令执行速度慢,指令功能的修改和扩展容易
B. 指令执行速度慢,指令功能的修改和扩展难
C. 指令执行速度快,指令功能的修改和扩展容易
D. 指令执行速度快,指令功能的修改和扩展难
【答案】D
【解析】在同样的半导体工艺条件下,硬布线(组合逻辑) 控制器的速度比微程序控制器的速度快. 这是因为硬布线控制器的速度主要取决于逻辑电路的延迟,而微程序控制器增加了一级控制存储器,执行的每条微指令都要从控制存储器中读取,影响了速度. 由于硬布线控制器一旦设计完成就很难改变,所以指令功能的修改和扩
第 4 页,共 74 页