数据结构试题14
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、简答题:(每小题3分,共15分)
1.在哈希查找法中,为什么平均查找长度与关键字个数无关?
2.对于无向图,如何用遍历算法判断图中是否存在回路?
3.Huffman树是否唯一?请举例说明。
4.栈和队列各有哪些基本操作?
5.在一个与堆序列对应的完全二叉树中,从根结点到任一个叶结点的路径
上的关键字序列有何特点?为什么?
二、判断正误:(每小题1分,共5分)
正确在()内打√,否则打 。
()1. 折半搜索只适用于有序表,包括有序顺序表和有序单链表。
()2.由树的中序表示和前序表示可以导出树的后序表示。
()3. 查找n个关键字的散列表时,平均查找长度与n无关。
()4. 希尔排序是一种不稳定的排序方法。
()5. 给定一个关键字集合,将得到唯一的一棵二叉排序树,与关键字的插入顺序无关。
三、单项选择题:(每小题1分,共5分)
1. 某二叉树结点的中序序列为A、B、C、D、E、F、G,后序序列为B、D、C、
A、F、G、E,则该二叉树根的右子是:
A)E B)F C)D D)G
2.在长度为n的顺序表的第i ( 1≤ i ≤n+1 )个位置上插入一个元素,元素的移动次数为:
A) n-i+1 B) n-i C) i D) i-1
3.下面关于图的存储的叙述中正确的是
A)邻接矩阵占用的存储空间只与图中结点个数有关,而与边数无关;
B)邻接矩阵占用的存储空间只与图中边数有关,而与结点个数无关;
C)邻接表占用的存储空间只与图中结点个数有关,而与边数无关;
D)邻接表占用的存储空间只与图中边数有关,而与结点个数无关。
4. 在待排序记录已基本有序的前提下,下述排序方法中效率最高的是:
A)直接插入排序 B)简单选择排序 C)快速排序 D)归并排序
5.栈S最多能容纳4个元素。现在6个元素按A、B、C、D、E、F的顺序进栈,下列哪一个序列是不可能的出栈序列?
A) A、B、C、D、E、F B) A、F、E、D 、C、B
C) C、B、E、D、A、F D) C、D、B、F、E、A
四、填空题:(每小题2分,共 20分)
1.向一个有n个元素的有序表中插入一个新元素并保持原来顺序不
变,平均要移动个元素。
2.设广义表L=( ( ), ( ) ),则head(L)是;tail(L)是;
L的长度是;深度是。
3.在双向循环单链表中,删除指针P所指结点的操作是;。
4. 设根结点的层数为1,则高度为k的二叉树具有的结点数目,最少为,最多为。
5.10000个结点构成的二叉排序树,在等概率查找的假设下,查找成功时的平均查找长度的最大值可能达到________________。
6.有3个结点的、不同结构的二叉树共有棵。
7.将10阶的下三角矩阵A按列优先顺序压缩存储在一维数组C中,则C数组的大小应为________。
8. 在n个结点的线索二叉链表中,有________个线索指针。
9.已知二维数组A[10][20]采用行序为主方式存储,每个元素占2个存储单元,并且A[0][0]的存储地址是1024, 则A[6][18]的存储地址是
。
10.字符A、B、C依次进入一个栈,按出栈的先后顺序组成不同的字符串,至多可以组成个不同的字符串。
五、构造题:(每小题6分,共30分)
1.已知关键字序列:(SUN, MON, TUE, WED, THU, FRI, SAT),哈希函数为:H(K)=(K中最后一个字母在字母表中的序号)MOD 7用线性探测法处理冲突,要求构造一个装填因子为0.7的哈希表,并分别计算出在等概率情况下查找成功与不成功的平均查找长度。
2.一个二叉树按顺序方式存储在一个一维数组中,如图1所示(空元素对应虚结点)。(1)画出二叉树,(2)给出后序遍历序列。
图1
3.假设字符a, b, c, d, e, f的使用频度分别是0.07, 0.09, 0.12, 0.22, 0.23, 0.27,画出哈夫曼树,并给出a, b, c, d, e, f的哈夫曼编码。
4. 已知无向图如图2所示,
(1)给出图的邻接表。
(2)从C开始,给出深度优先遍历序列和深度优先搜索树。5.将下列关键字序列筛成一个大根堆:
(A, C, D, G, H, M, P, Q, R, X),要求给出建堆过程图示。
六、算法设计题:(共25分)
1.编写算法,从键盘读入有向图的顶点和弧,创建有向图的邻接表存储结构。[15分]
2.二叉树按照二叉链表方式存储,编写非递归算法计算二叉树中结点数目。[10分]