数据结构试题-附答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题
1、在数据结构的讨论中把数据结构从逻辑上分为()
A )内部结构与外部结构 B)静态结构与动态结构
C )线性结构与非线性结构
D )紧凑结构与非紧凑结构。
2、对线性表进行二分查找时,要求线性表必须()。
A. 以链接方式存储,且数据元素有序
B. 以链接方式存储
C. 以顺序方式存储,且数据元素有序
D. 以顺序方式存储
3、若长度为n的线性表采用顺序存储结构存储,在第i个位置上插入一个新元素的时间复杂度为()A)O(n) B)O(1) C)O(n2) D)O(n3)
4、顺序循环队列中(数组的大小为6),队头指示front和队尾指示rear的值分别为3和0,当从队列中删除1个元素,再插入2个元素后,front和rear的值分别为()
A)5和1 B)2和4 C)1和5 D)4和2
5.在下列排序方法中,()的比较次数与记录的初始排列状态无关。
A. 直接插入排序
B. 起泡排序
C. 快速排序
D. 简单选择排序
6、设有数组A[i,j],数组的每个元素长度为3字节,i的值为1到8,j的值为1到10,数组从内存首地址BA开始顺序存放,当以列为主序存放时,元素A[5,8]的存储首地址为( )
A)BA+41 B)BA+180 C)BA+222 D)BA+225
7、下面哪个术语与数据的存储结构无关()
A)顺序表B)链表C)散列表D)队列
8、在一棵高度为k的满二叉树中,结点总数为()
A)2k-1 B)2k C)2k-1D)⎣log2k⎦+1
9、一棵完全二叉树上有1 001个结点,其中叶子结点的个数为()
A)250 B)500 C)254 D)501
10、利用二叉链表存储树,则根结点的右指针是()
A)指向最左孩子 B)指向最右孩子 C)空 D)非空
11、若邻接表中有奇数个边结点,则一定()
A)图中有奇数个顶点B)图中有偶数个顶点C)图为无向图D)图为有向图
12、无向图G=(V,E),其中:V={a,b,c,d,e,f},E={(a,b),(a,e),(a,c),(b,e),(c,f),(f,d),(e,d)},对该图进行深度优先遍历,得到的顶点序列正确的是()
A)abecdf B)acfebd C)aebcfd D)aedfcb
13、在一个带权连通图G中,权值最小的边一定包含在G的()
A)最小生成树中B)深度优先生成树中C)广度优先生成树中D)深度优先生成森林中
14、已知含10个结点的二叉排序树是一棵完全二叉树,则该二叉排序树在等概率情况下查找成功的平均查找长度等于()
A)1.0 B)2.9 C)3.4 D)5.5
15、下面的序列中初始序列构成最小堆(小根堆)的是()
A)10、60、20、50、30、26、35、40 B)70、40、36、30、20、16、28、10
C)20、60、50、40、30、10、8、72 D)10、30、20、50、40、26、35、60
二、应用题
1、已知一棵度为m的树中有n1个度为1的结点,n2个度为2的结点,……,n m个度为m的结点,问该树中有多少个叶子结点?要求写出分析过程。
2、已知一棵二叉树的中序遍历的结果为ABCEFGHD,后序遍历的结果为ABFHGEDC,试画出此二叉树。
3、设用于通信的电文由8个字母组成,字母在电文中出现的频率分别为:7,19,2,6,32,3,21,10。试为这八个字母设计哈夫曼编码,并求出总码长。
4、对于下图,从顶点V0出发,按照普里姆算法求出它的最小生成树,画出求解过程。
5、设散列表长度为11,散列函数H(x) = x%11,给定的关键字序列为1,13,12,34,38,33,27,22。试画出分别用拉链法和线性探测法解决冲突时所构造的散列表,并求出在等概率的情况下,这两种方法查找成功时的平均查找长度。
6、对下面关键字序列,写出采用希尔排序算法进行排序的每一趟的结果。其中增量序列的取值为{5,3,1}。(125,11,22,34,15,44,76,66,100,8,14,20,2,5,1)
三、编程题
注意:先进行类型定义,再写算法。
1、已知一个顺序表中的各结点值是从小到大有序的,设计一个算法,插入一个值为x的结点,使顺序表中的结点仍然是从小到大有序(不考虑空间不够用的情况)。
2、设计一个算法,判断一个单链表中的各个结点值是否递增有序(带头结点的单链表)。
3、编写一个函数,求一棵给定二叉树中叶子结点的个数(提示:采用任何一种遍历方法都可以)。
V1
7
8
6
4
8
7
3
1
V0
V2
V5 V3
V4
密
封
线
内
不
要
答
题
第3页 共3页
一、 选择
CCADB BDCDC DDABD 二、
1、设叶子个数为x
总度数=n 1+2*n 2+3*n 3+…+m*n m 结点总数=n 1+n 2+…+n m +x 而结点总数=总度数+1
则x=1+n 2+2*n 3+…+(m-1)*n m 2、
3、哈夫曼树的构造过程如下:
假设八个字母分别为A 、B 、C 、D 、E 、F 、G 、H ,则这八个字母对应得编码为: A ——1010 B ——00 C ——10000 D ——1001 E ——11 F ——10001 G ——01 H ——1011
WPL=(19+21+32)*2+(6+7+10)*4+(2+3)*5=261
2 3
5 2 3
5
6
11
10
7 17
28 2 3
5
6
11
10
7 17
21
19 40
28
2
3
5
6
11
10
7 17
32
60
28
2
3
5
6
11
10
7 17
32
60
21
19 40
100
C
A B D E
G F H