数据结构(本) 复习题
一、单项选择题(每小题2分,共30分)
1.深度为5的完全二叉树共有20个结点,则第5层上有( )个结点(根所在结点为第一层)。 A.3 C.5
B.8 D.6
2.已知一个图的边数为ii,则该图的所有顶点的度数之和为( )。 A.2m C.2m+1
B.m D.m/2
3.数据结构中,与所使用的计算机无关的是数据的( )结构。 A.物理
B.存储 D.逻辑
C.逻辑与物理
4.链表所具备的特点是( )。 A.可以随机访问任一结点
B.占用连续的存储空间
D.可以通过下标对链表进行直接访问
C.插人删除不需要移动元素结点
5.线性表只要以( )方式存储就能进行折半查找。 A.链接
B.顺序 D.二又树
C.关键字有序的顺序
6.散列查找的原理是( )。
A.在待查记录的关键字值与该记录的存储位置之间建立确定的对应关系 B.按待查记录的关键字有序的顺序方式存储 C.按关键字值的比较进行查找 D.基于二分查找的方法
7.对n个元素进行冒泡排序若某趟冒泡中只进行了( )次元素间的交换,则表明序列已经排好序。 A.1 C.0
B.2 D.n-1
8.排序过程中,每一趟从无序子表中将一个待排序的记录按其关键字的大小放置到已经排好序的子序列的适当位置,直到全部排好序为止,该排序算法是( )。
A.直接插入排序 C.冒泡排序
B.快速排序 D.选择排序
9.在对一组元素(64,48,106,33,25,82,70,55,93)进行直接插入排序时,当进行到要把第7个元素70插入
第 1 页 共 30 页
到已经排好序的子表时,为找到插人位置,需进行( )次元素n的比较(指由小到大排序)。
A.6 C.3
B.2 D.4
10.采用顺序查找法对长度为n的线性表进行查找(不采用表尾设监视哨的方法),最坏的情况下要进行( )次元素间的比较。
A.n+2 C.n-1
B.n D.n/2
11如图,若从顶点a出发按广度优先搜索法进行遍历,则可能得到的顶点序列为( )。
A.acebdgf C.acfedgb
B.abecdgf D.abecfdg
12.元素2,4,6,8按顺序依次进栈,则该栈的不可能输出序列是( )(进栈出栈可以交替进行)。 A.8,6,4,2 C.4,2,8,6
B.2,4,6,8 D.8,6,2,4
13.排序方法中,从未排序序列中挑选元素,并将其依次放人已排序序列(初始为空)的一端的方法,称为( )排序。
A.归并 C.选择
B.插人 D.快速
I4.一棵哈夫曼树总共有23个结点,该树共有( )个叶结点(终端结点)。 A.10 C.11
B.13 D.12
15.队列的插人操作在( )进行。 A.队头
B.队尾
D.在任意指定位置
C.队头或队尾
二、填空题(每小题2分。共24分)
16.一棵二又树没有单分支结点,有6个叶结点,则该树总共有___________个结点。
第 2 页 共 30 页
17.设一棵完全二叉树,其最高层上最右边的叶结点的编号为奇数,该叶节点的双亲结点的编号为10,该完全二又树一共有___________个结点。
18.按照二又树的递归定义,对二叉树遍历的常用算法有先序、___________、___________三种。 19.结构中的数据元素存在一对多的关系称为___________结构。
20.把数据存储到计算机中,并具体体现数据之间的逻辑结构称为___________结构。 21.结构中的数据元素存在一对一的关系称为___________结构。 22.如图2所示的二又树,其后序遍历序列为______________________。
23.n个元素进行冒泡法排序,通常需要进行____________趟排序。
24.二叉树为二又排序的充分必要条件是其任一结点的值均大于其左孩子的值、小于其右孩子的值。这种说法是____________的。(回答正确或不正确)
25.图的深度优先搜索和广度优先搜索序列不一定是唯一的。此断言是____________的。(回答正确或不正确)
26.根据搜索方法的不同,图的遍历有______________________、______________________两种方法。 27.按某关键字对记录序列排序,若关键字___________的记录在排序前和排序后仍保持它们的前后关系,则排序算法是稳定的,否则是不稳定的。
三、综合题(每小题10分,共30分)
28.(1)利用筛选过程把序列{42,82,67,102,16,32,57,52}建成堆(小根堆),画出该堆(不要求中间过程)。 (2)写出对上述堆对应的完全二又树进行中序遍历得到的序列。
29.设查找表为(16,15,20,53,64,7),
(1)用冒泡法对该表进行排序(要求升序排列),要求写出每一趟的排序过程。
第 3 页 共 30 页
(2)在排序后的有序表的基础上,画出对其进行折半查找所对应的判定树。(要求以数据元素作为树结点)。
(3)求在等概率条件下,对上述有序表成功查找的平均查找长度。
30.(1)设有一个整数序列(50,38,16,82,110,13,64},依次取出序列中的数,构造一棵二叉排序树。 (2).利用上述二叉排序树,为了查找110,经多少次元素间的比较能成功查到,为了查找15,经多少次元素间的比较可知道查找失败?
四、程序填空题(每空2分,共16分)
31.以下函数为链队列的入队操作,X为要人队的结点的数据域的值,front,rear分别是链队列的队头、队尾指针
32.以下函数在head为头指针的具有头结点的单向链表中删除第1个结点,
第 4 页 共 30 页
第 5 页 共 30 页