2018年武汉大学遥感信息工程学院942数据结构考研仿真模拟五套题
● 摘要
一、填空题
1. 顺序查找n 个元素的顺序表,若查找成功,则比较关键字的次数最多为_____次;当使用监视哨时,若查找失败,则比较关键字的次数为_____。
【答案】n ; n+1
【解析】最多的情况就是把整个表遍历了一遍。使用监视哨时,需要多一个存储空间来存监视哨。
2. 用循环链表表示的队列长度为n ,若只设头指针,则出队和入队的时间复杂度分别是_____和_____;若只设尾指针,则出队和入队的时间复杂度分别是_____和_____。
【答案】O(1);O(n);O(1);O(1)
【解析】队列的出队操作即删除队头的元素,队列的入队操作即在队尾添加元素,循环链表只设头指针,出队时,只要把头结点的下一个结点删除就好了,入队时,要把新的结点插入队尾,必须把队列遍历,找到队尾指针,才能插入。循环队列只设尾指针,出队时只要把为指针的下一个结点或者下下个结点删除即可,入队时,只要在尾指针的后面插入新的结点,并更新尾结点即可。
3. 设有两个算法在同一机器上运行,其执行时闻分别为100n 2和2n ,要使前者快于后者,n 至少为_____。
【答案】15
2n 【解析】当时,100n2>2n,而,时,100n <2
4. 对n 个记录的表进行简单选择排序,所需进行的关键字间的比较次数为_____。
【答案】n (n-1) /2
【解析】第一次需要n -1次比较,第i 此需要n -i 此比较,所以共需要。
5. 在双向循环链表中,向P 所指的结点之后插入指针f 所指的结点,其操作是_____、_____、_____、_____。
【答案】f ﹣>next =p ﹣>next ;f ﹣>prior =p ;p ﹣>next ﹣>prior =f ;p ﹣>next =f ;
6. 对于给定的元素,可以构造出的逻辑结构有_____,_____,_____,_____四种。
【答案】集合;线性结构;树形结构;图状结构(网状结构)
7. 数据结构是研讨数据的_____和_____以及它们之间的相互关系,并对与这种结构定义相应的_____, 设计出相应的_____。
【答案】逻辑结构;物理结构;操作(运算) ;算法
8. 深度为H 的完全二叉树至少有_____个结点:至多有_____个结点; H 和结点总数N 之间的关系是_____。 【答案】
9. 数组的存储结构采用_____存储方式。
【答案】顺序存储结构
【解析】数组本身的存储结构是线性的,也就是说它是连续存储的。
10.G 是一个非连通无向图,共有28条边,则该图至少有_____个顶点。
【答案】9
【解析】求该非连通无向图的最少顶点数,则该图为一个孤立的顶点和一个完全连通图。
11.组成串的数据元素只能是_____。
【答案】字符
12.设二维数组A 的行和列的下标范围分别为[0:8]和[0:10],每个元素占2个单元,按行优先顺序存储,第一个元素的存储起始位置为b ,则存储位置为b+50处的元素为_____。
【答案】A[2][3]
【解析】令这个元素的行标为i ,列标为j 。则它的存储位置是(ll*i+j +l ﹣l)*2+b 。当其值为b +50时,则i =2,j =3。
二、单项选择题
13.在下图所示的平衡二叉树中, 插入关键字48后得到一棵新平衡二叉树。在新平衡二叉树中, 关键字37所在结点的左、右子结点中保存的关键字分别是( )。
A.13、48
B.24、48
C.24、53
D.24、90
【答案】C
【解析】题目中, 插入48以后, 树根结点的平衡因子由-1变为-2, 失去平衡。这属于RL(先右后左) 型平衡旋转, 需做两次(先右旋后左旋转) 旋转操作。过程如下图所示:
显然, 在调整后的新平衡二叉树中, 关键字37所在结点的左、右子结点中保存的关键字分别是24, 53。
14.下列排序算法中元素的移动次数和关键字的初始排列次序无关的是( )。
A. 直接插入排序
B. 起泡排序
C. 基数排序
D. 快速排序
【答案】C
【解析】C 项, 基数排序是采用分配和收集实现的, 不需要进行关键字的比较。ABD 三项都依赖关键字的比较, 不同的初始排列次序下元素移动的次数有很大变化, 最好情况元素正序, 则不用移动, 最坏情况元素反序, 则需要移动次(n为元素个数) 。
15.分别以下列序列构造二叉排序树,与用其他三个序列所构造的结果不同的是( )。
A.(100, 80, 90, 60, 120, 110, 130)
B.(100, 120, 110, 130, 80, 60,90)
C.(100, 60, 80, 90, 20, 110, 130)
D.(100, 80, 60, 90, 120, 130, 110)
【答案】C
【解析】二叉排序树:左右子树都是二叉排序树,且保证右子树都比根结点大,左子树都比根结点小。据以上两点建立二叉排序树。
16.处理外部中断时, 应该由操作系统保存的是( )。
A. 程序计数器(PC)的内容
B. 通用寄存器的内容
C. 快表(TLB)的内容
D.Cache 中的内容
【答案】B
【解析】外部中断处理过程首先要保护现场, 使得中断处理完后能够恢复程序的状态继续执