数据结构试题集(8套卷子+答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据结构试题集(8套卷子+答案)
《数据结构》试卷一
一、填空题:(共20分)
1、当线性表的元素总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素时,应采用存储结构。

2、队列是限制插入只能在表的一端,而删除在表的另一端进行的线性表,其特点是。

3、在一棵二叉树中,度为0的结点个数为n0,度为2的个数为n2,则n0= 。

4、二叉树的前序遍历序列等同于该二叉树所对应森林的遍历序列
5、对一棵二叉排序树,若以遍历该树,将得到一个以关键字递增顺序排列的有序序列。

6、三个结点a,b,c组成二叉树,共有种不同的结构。

7、在AVL树中,由于在A结点的右孩子的右子树上插入结点,使A结点的平衡因子由-1变为-2,使其失去平衡,应采用型平衡旋转。

8、图的遍历有两种,它们是。

9、堆排序的时间复杂度为。

10、在含有N个结点的二叉链表中有空链域,通常用这些空链域存储线索,从而得另一种链式存储结构----线索链表。

二、单项选择题(共20分)
1、若进栈序列为1,2,3,4,假定进栈和出栈可以穿插进行,则可能的出栈序列是()
(A)2,4,1,3(B)3,1,4,2
(C)3,4,1,2(D)1,2,3,4
2、有一棵非空的二叉树,(第0层为根结点),其第i层上最多有多少个结点?()(A)2i(B)21-i(C)21+i(D) i 3、设电文中出现的字母为A,B,C,D,E,每个字母在电文中出现的次数分别为9,27,3,5,11,按huffman编码,则字母A编码为()
(A)10(B)110(C)1110(D)1111
4、下面关于数据结构的叙述中,正确的叙述是()
(A)顺序存储方式的优点是存储密度大,且插、删除运算效率高(B)链表中每个结点都恰好包含一个指针
(C)包含n个结点的二叉排序树的最大检索长度为log
n
2
(D)将一棵树转为二叉树后,根结点无右子树
5、程序段:y:=0
while n>=(y+1)*(y+1) do
y:=y+1
enddo
的时间复杂度为()
(A)O(n) (B)O(n2) (C)O(n2/1) (D)O(1)
6、排序方法中,关键码比较的次数与记录的初始排列无关的是( )
(A) shell排序 (B) 归并排序 (C) 直接插入排序 (D) 直接选择排序
7、数组q[0..n-1]作为一个环行队列,f 为当前队头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数总小于n,则队列中元素个数为( )
(A) r-f (B) n+f-r (C) n+r-f (D) (n+r-f) mod n
8、为了有效的利用散列查找技术,需要解决的问题是:( )
Ⅰ:找一个好的散列函数
Ⅱ:设计有效的解决冲突的方法
Ⅲ:用整数表示关键码值
(A) Ⅰ和Ⅲ (B) Ⅰ和Ⅱ (C) Ⅱ和Ⅲ (D)Ⅰ,Ⅱ和Ⅲ
9、引入线索二叉树的目的是()
(A) 加快查找结点的前驱或后继的速度
(B) 为了能在二叉树中方便的进行插入与删除
(C) :为了能方便的找到双亲
(D) 使二叉树的遍历结果唯一
10、用二分(折半)查找表的元素的速度比用顺序法()
(A) 必然快(B) 必然慢(C): 相等(D): 不能确定
三、简答题:(共40分)
1、已知某二叉树按中序遍历序列为BFDAEGC,按前序遍历序列为ABDFCEG,试画出该二叉树形状,并写出它的后序遍历序列。

2、取适当Hash函数及处理冲突的方法,试在0--10散列地址空间中对关键字序列(2,41,53,46,30,13,01,67)构造Hash表,并求出等概率下查找成功的平均查找长度。

3、已知一组元素为(46,25,78,62,12,37,70,29),画出按元素排列输入生成的一棵二叉排序树,(要求写出每插入一个元素时二叉排序树形状)
4、对下面数列{51,28,39,75,63,11,37,42,31}利用shell排序算法进行排序,试画出每遍排序结束时数列状态。

并注明选用的增量序列d1,d2,......
5、如图所示,对图G用prim算法构造最小生成树(由顶点f开始),要求能反映出树中顶点与边加入的顺序。

b 6 e
2 5
a d 4
3 3
c f
5
四、设计或分析题:(共20分)
1、设单链表具有头结点,且表中元素各不相同,试编程在单链表中删除值为"x"的结点。

2、写出在中序线索二叉树中求结点p^的中序后继结点的算法。

(注:该树是己中序线索化了的二叉树,且p^结点己知)《数据结构》试卷二
一、填空题:(共20分)
1、数据结构研究数据的结构。

2、对算法从时间和空间两方面进行度量,分别称为分析。

3、线性表是n个元素的。

4、线性表的存储结构有。

5、栈和队列分别称为的线性表。

6、二叉树第i层上最多有个结点。

7、一个二叉树中每个结点最多只有个孩子。

8、Hash技术关键是两个方面。

9、二叉排序树若左子树不空,则左子树上的所有结点值均它的根结点值。

10、AOV一网以结点和有向边分别代表。

二、单项选择题:(共20分)
1、下列各种结构的物理存储必须占用连续的存储空间的是-----------( )
(A)数组 (B)栈 (C)二叉树 (D)链表
2、由前根排序序列和中根排序序列( )唯一确定一棵二叉树。

(A)能 (B)不能 (C)不一定。

3、同一记录结构中的各数据项的类型( )一致。

(A)必须 (B) 不必 (C)不能 (D)不可能。

4、4个元素进S栈的顺序是A,B,C,D,经运算POP(S)后栈顶元素是----------( )
(A) A (B) B (C) C (D) D
5、有n个顶点e条边的无向图G,它的邻接表中的表结点总数是----------( )
(A) 2n (B)n (C) 2e (D) e
6、二维数组Amn按行序为主序存放在内存,每个数组元素占1 个存储单元 , 则元素 aij 的地址计算公式是:________( )
(A) loc(aij)=loc(a11)+[(i-1)*m+(j-1)]
(B) loc(aij)=loc(a11)+[(j-1)*m+(i-1)]
(C) loc(aij)=loc(a11)+[(i-1)*n+(j-1)]
(D) loc(aij)=loc(a11)+[(j-1)*n+(i-1)]
7、连通图G中有n个顶点,G的生成树是( )连通子图.
(A)包含G的所有顶点(B)包含G的所有边(C)不必包含G的所有顶点
(D)必须包含G的所有顶点和所有的边
8、n=1000,要求最坏情况速度最快的排序方法为_________( )
(A)快速排序 (B)起泡排序 (C)归并排序 (D)shell排序
9、在一个以h为头的单循环链表中,p指针指向链尾的条件是()
a. p^.next=h
b. p^.next=nil
c. p^.next^.next=h
d. p^.data=-1
10、下面关于求关键路径的说法不正确的是()
a.求关键路径是以拓扑排序为基础的
b.一个事件的最早开始时间同以该事件为尾的弧的活动最早开始时间相同
c .一个事件的最迟开始时间同以该事件为尾的弧的活动最迟开始时间相同与该活动的持续时间的和
d. 关键活动一定在关键路径上
三、简答题:(共40分)
1、静态查找与动态查找的最大区别是什么? 相应的查找方法有哪些?
2、设a,b,c,d,e,f六个字母出现的概率分别为7,19,2,6,32,3,写出为这六个字母设计
huffman编码并画出对应huffman树。

3、写出下列二叉树的前序,中序,后序遍历序列及对应的森林。

A
/ \
B C
\ / \
D E F
/
G
4、画出下列无向图的邻接表存储结构,并由邻接表写出广度优先搜索序列和深度优先搜索序列。

A
/ | \
B--C—D
\ | /
E
5、用快速排序方法对下列整数序列进行排序,写出中间及最后结果。

[89,27,52,90,15,28,100,72]
四、设计或分析题:(共20分)
1、已知线性链表的头指针为S,每个结点含有数据域DATA和指针域NEXT,写出使该链表倒排元素次序的算法。

2、有n个结点的完全二叉树存放在一维数组A[1..n]中,试据此建立一棵二叉链表表示的二叉树,根由tree指向。

《数据结构》试卷三
一、填空题:(共20分)
1、算法是对特定问题求解的一种描述。

2、数据类型是一个上的一组操作总称。

3、顺序结构下,线性表的插入操作,最坏情况下的时间复杂度为。

4、对循环链表判空条件为 (head为头指针)。

5、广义表又称 ,它是由零个或多个序列。

6、队列已满,但队列空间未被充分利用,此现象称。

7、对一个树高为k,具有n个结点的完全二叉树,至多只有层结点的度可小于
2,而的叶结点集中在左边若干位置上。

8、一个连通图的生成树是一个连通生成子图。

9、网即。

10、线性表L=(a1,a2,…,an)用数组表示,假定删除表中任一元素的概率相同,则删除一个元素平均需要移动元素的个数是。

二、单项选择题:(共20分)
1、在数据结构中,从逻辑上可以把数据结构分成---------( )
(A)动态结构和静态结构
(B)紧凑结构和非紧凑结构
(C)线性结构和非线性结构
(D)内部结构和外部结构
2、若进栈序列为1,2,3,4,假定进栈和出栈可以穿插进行,则可能出栈序列为----------( )
(A)2,4,1,3 (B)3,1,4,2 (C) 3,4,1,2 (D)1,2,3,4
3、由三个点可以组成( )种不同的二叉树。

(A) 36 (B) 18 (C)30 (D) 12
4、图 G =(V,R),其中V是顶点集,R是边集,那么:( )
(A) V,R均为可空集 (B) V可为空集,R不能为空集
(C) R可为空集,V不能为空集 (D)V和R均不为空集
5、在有序表中使用折半查找法的平均时间是( )
(A) O(1) (B) O(n) (C)O(log2n) (D)O(n2)
6、用除留余数法求关键字K的Hash函数值时,若Hash表表长为M=100,那么应以( )为模。

(A) 97 (B) 50 (C) 200 (D)10
7、连通图G中有n个顶点,G的生成树是( )的连通子图。

(A)包含G的所有顶点 (B)包含G的所有边
(C)不必包含G的所有顶点 (D)必须包含 G的顶点和所有边
8、如图所示平衡二叉树,插入元素78后,应作什么处理,使其仍为一棵平衡二叉树().
(A)LR型平衡调整. 56
(B)RL型平衡调整. /\
(C)RR型平衡调整. 34 85
(D)LL型平衡调整. / /\
(E)无需任何处理. 30 74 92
/\
65 80
9、堆排序属于().
(A) 插入排序. (B)交换排序 (C)归并排序 (D)选择排序
10、将下图的森林转换成二叉树,所得结果中正确的是().
A E G
/ | \ | / \
B C D F H I
\
J
(A) A (B) A
/ \ / \
B E B E
/ / \ / / \
C F G C F G
/ / \ /
D H D H
/ \
I I
/ /
J J
(C) A (D) A
/ \ / \
B E B E
\ /\ / /\
C F G C F G
\ / / /\
D H D H I
\ \
I J
/
J
三、简答题:(共40分)
1、什么是稳定排序?什么是不稳定排序?
2、已知某二叉树的中序遍历序列为CBGEAFHD,后序遍历序列为CGEBHFDA,画出该二叉
树的前序线索二叉树的二叉链结构的表示。

3、已知某森林转化成二叉树后所对应的顺序存储结构为
请画出该森林
4、设有一个无向图(1)画出其邻接表,(2)在该邻接表基础上求DFS的顶点序列,(3)在该邻接表基础上求BFS的顶点序列。

2 3
1 4
5 6
5、试画出对长度为10的有序表进行折半查找的判定树形,并求等概率时查找成功的平均查找长度。

四、设计或分析题:(共20分)
1、指出以下算法中的错误和低效(费时)之处,并将它改正为一个既正确又高效的算法: PROC DELK(A:ARRAY[1..ARRSIZE] OF INTEGER;LAST,I,K:INTEGER)
{A[ST]含线性表元素,本过程从A[ST]中删除第I个元素起的K个元素}
IF (I<1) OR (I>LAST) OR (K<0) OR (LAST>ARRSIZE)
THEN ERROR('ARGUMENT INVAILD')
ELSE FOR COUNT:=1 TO K DO {删除一个元素}
[FOR J:=LAST DOWNTO I+1 DO
A[J-1]:=A[J];
LAST:=LAST-1]
ENDP;{DELK}
2、试以二叉链表作存储结构,编写求二叉树深度的递归算法。

《数据结构》试卷四
一、填空题:(共20分)
1、队列是限制插入只能在表的一端,而删除在表的另一端进行的线性表,其特点是。

2、设有字母序列{Q,D,F,X,A,P,N,B,,Y,M,C,W},请写出按归并排序方法对该序列进行一趟扫描后的结果。

3、程序 for i:=1 to n do
for j:=1 to n do
A[i,j]:=0;
的算法复杂度为。

4、具有m个叶结点的huffman树共有个结点。

5、完全二叉树T按顺序存放,编号依次为1,2,...,n,则编号为i的结点左孩子如果存在的话,其编号为。

6、n个顶点的连通图构成一棵生成树,有条边。

7、图的邻接表中,每个链内结点代表。

8、AOV-网中的弧和顶点分别表示。

9、串是由零个或多个序列。

10、递归有直接和间接两种,其中直接递归是指。

二、单项选择题:(共20分)
1、在数据结构中,从逻辑上可以把数据结构分成---------( )
(A)动态结构和静态结构
(B)紧凑结构和非紧凑结构
(C)线性结构和非线性结构
(D)内部结构和外部结构
2、编号为1,2,3,4的四辆列车,顺序开进一个栈式结构栈台,则开出栈台顺序有( )种。

(A) 1 (B) 3 (C) 5 (D) 7
3、一维数组和线性表的区别为:---------( )
(A)前者长度固定,后者长度可变. (C)两者长度均固定
(B) 前者长度可变,后者长度固定. (D)两者长度均可变.
4、设用一维数组A[1..n]来存储一个栈,令A[n]为栈底,用整型变量T指示当前栈顶位置,A[T] 为栈顶元素,当从栈中弹出一个元素时,变量T 的变化为-------( )
(A)T=T+1 (B)T=T-1 (C)T不变 (D)T=n
5、对所示图,顶点V6的入度为-----------( )
(A)2 (B)3 (C)5 (D)0
V1
V2 V6 V5
V3 V4
6、将n个元素的顺序表倒置,则至少需要的附加空间为----( )
(A)0 (B)1 (C)n (D)n+1
7、有一棵非空的二叉树,其第i层上最多有多少个结点?---()
(A)2i(B)21-i(C)21+i(D) i
8、n=1000,要求最快,且最省内存的排序方法为-----( )
(A)快速排序 (B)shell排序 (C)归并排序 (D)堆排序
9、在构造散列表时,下面能采用的处理冲突的方法为---------( )
(A)开放定址法 (B)链地址法 (C)直接定址法 (D)再hash法
10、下面关于图的存储的叙述中正确的是
(A)用相邻矩阵法存储图,占用的存储空间大小只与图中结点个数有关,而与边数无关(B)用相邻矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关(C)用邻接表法存储图,占用的存储空间大小只与图中结点个数有关,而与边数无关(D)用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关
三、简答题:(共40分)
1、已知按前序遍历二叉树的结果为ABC D,试问:有几种不同的二叉树可得到这种遍历结果?并依次画出相应树形。

2、什么是堆?试按堆的构造方法,写出对应于序列(26,5,77,1,61,11,59,15,48,19) 的初始堆。

3. 已知如下所示长度为12的表
(jan,fab,mar,apr,may,june,july,aug,sep,oct,nov,dec)
按表中元素顺序构造一棵平衡二叉树,并求出等概率情况下查找成功平均查找长度.
4、已知6行7列稀疏矩阵A的三元组表表示为N=((1,4,6),(2,3,5),(2,6,2), (4,2,7),(5,1,2),(5,5,1),(5,6,4),(6,1,8),(6,7,8)),试写出该稀疏矩阵及A的对称矩阵的三元组表示。

5、设a,b,c,d,e,f六个字母出现的次数分别为7,19,2,6,32,3,写出为这六个字母设计
huffman编码并画出对应huffman树。

四、分析或设计题:(20分)
1、首先根据从键盘上输入的n个整数建立一个单链表,然后按递增次序打印出所有结点的值。

2、假设二叉树用二叉链表作存储结构,设计一个算法计算并输出每个结点的子孙个数。

《数据结构》试卷五
一、填空题:(共20分)
1、“好”算法应达到的目标正确性,易读性,健壮性和。

2、广义表的尾元素为。

3、一维数组存储地址计算公式为(设b为基地址,每个元素所占存储单元数为l,下标取值范围为(c1,d1))
4、栈简称结构,它是一种后进先出结构。

5、一棵深度为K,且有2k-1个结点的二叉树称为。

6、树的带权路径长度为。

7、P='BEIJING',R='JING',则R在P中位置为。

8、关键字是数据元素中用以标识一个数据元素的某一个的值,若
此关键字可唯一标识一个记录,则称此关键字为。

9、设F是由T1、T2和T3三棵树组成的森林,与F对应的二叉树为B,已知T1、T2和T3的结点个数分别n1、n2和n3,则二叉树B的根结点的左子树和右子树中的结点个数分别为n1—1和。

10、如果对于给定的一组权值,所构造出的二叉树的带权路径长度最小,则该树称为________。

二、单项选择题:(共20分)
1、下列各种结构的物理存储必须占用连续的存储空间的是-----------( )
(A)数组 (B)栈 (C)二叉树 (D)链表
2、用顺序方法将完全二叉树的结点逐层放在数组A[1..n]中,结点A[i]若有右子女,则该右子女是结点------------( )
(A) A[2i-1] (B) A[2i+1] (C) A[i/2] (D) A[2i]
3、若进栈序列为1,2,3,4,假定进栈和出栈可以穿插进行,则可能出栈序列为----------( )
(A)2,4,1,3 (B)3,1,4,2 (C) 3,4,1,2 (D)1,2,3,4
4、对如下无向图G,若从顶点V1开始,按深度优先搜索进行遍历,则可能的访问顺序为-----------( )
(A) V1,V2,V3,V4,V5,V6,V7,V8 (C) V1,V2,V3,V4,V8,V5,V6,V7
(B) V1,V2,V4,V8,V5,V6,V3,V7 (D) V1,V2,V4,V5,V8,V3,V6,V7
V1
/\
V2 V3
/\/\
V4 V5 V6 V7
\\//
\││/
\││/
V8
5、进行二分法查找,则线性表---------------( )
(A)必须以顺序方式存储
(B) 必须以链接方式存储,且数据元素已按值排好序
(C)必须以链接方式存储
(D) 必须以顺序方式存储,且数据元素已按值排好序
6、从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)一端,这种排序方法称为------------( )
(A) 选择排序 (B) 归并排序 (C) 直接插入排序 (D) 快速排序
7、某二叉树的前序遍历结点访问顺序为A B C D E F G,中序遍历结点访问顺序为C B D
A F G E,则其后序遍历结点访问顺序为----------------( )
(A) C D B G F E A (B) C D G F E A B
(C) C D B A G F E (D) C D B F A G E
8、对n个记录的序列进行快速排序,所需的辅助空间为( )
(A) O(1) (B) O(log
n) C) O(n) (D) O(n2)
2
9、下列哪一个关键码序列不符合堆的定义?
A)A、C、D、G、H、M、P、Q、R、X
B)A、C、M、D、H、P、X、G、Q、R
C)A、D、P、R、C、Q、X、M、H、G
D)A、D、C、M、P、G、H、X、R、Q
10、如果要求一个线性表既能较快查找,又能适应动态变化要求,可采用查找方法-------( )
(A)分块 (B)顺序 (C)二分 (D) 散列
三、简答题:(共40分)
1、"不管是按(a) 先根顺序 (b)中根顺序 (c)后根序遍历二叉并列出二叉树的结点列, 其终结结点都以相同的相对顺序出现."试判断这句话正误,并说明理由
2、通过插入关键字序列(3,26,37,24,12,20,15)构造一棵3阶B-树的过程:
3、试写出稀疏矩阵M及其转置矩阵M'的三元组表。

┌15 0 0 22 0 -15 ┐
│0 11 3 0 0 0 │
M=│0 0 0 -6 0 0 │
│0 0 0 0 0 0 │
│91 0 0 0 0 0 │
└ 0 0 28 0 0 0 ┘
4、对图中的每一棵树,给出其二叉树表示,并把相应森林转换为一棵整二叉树,
1 9 11
2 10 12 13
3 4 5 14 15
6 7
8
5、已知一AOV网,求出:
⑴:每个事件最早发生时间,最迟发生时间?
⑵:完成整个工程至少需要多少时间?
6 2 1 9
7 2
1 4 5 9
3 1 7 8 4
5 2
4 6 4
五、算法分析与设计:(20分)
1、向单链有序表中插入元素为X的结点,使得插入后仍然有序。

2、试以二叉链表作存储结构,编写计算二叉树中叶子结点数目的
递归算法。

《数据结构》试卷六
一、填空题:(共20分)
1、在计算机中可使用一批连续的存储单元来存放数组,称为数组的顺序分配,一般有两种存储方式:分别是为主存储,
2、两栈合用空间,判栈满的条件为。

3、ADT称为。

4、线性表有两种存储结构,分别为。

5、Head(Tail(Head(((a,b),(c,d))))= 。

6、队列简称结构,循环队列判队空条件为。

7、如图:该树度为,树深度为,树的路径长度为。

A
/ │\
B C D
/\
E F

G
8、集合结构中的数据元素之间,除了的联系之外,没有其他关系。

9、如果对于给定的一组权值,所构造出的二叉树的带权路径长度最小,则该树称为________。

10、设F是由T1、T2和T3三棵树组成的森林,与F对应的二叉树为B,已知T1、T2和T3的结点个数分别n1、n2和n3,则二叉树B的根结点的左子树和右子树中的结点个数分别为n1—1和。

二、单项选择题:(共20分)
1、若进栈序列为1,2,3,4,假定进栈和出栈可以穿插进行,则可能的出栈序列是-----()
(A)2,4,1,3(B)3,1,4,2
(C)3,4,1,2(D)1,2,3,4
2、有一棵非空的二叉树,(第0层为根结点),其第i层上最多有多少个结点?
-----------------()
(A)2i(B)21-i(C)21+i(D) i
3、设电文中出现的字母为A,B,C,D,E,每个字母在电文中出现的次数分别为9,27,3,5,11,按huffman编码,则字母E编码为------()
(A)10(B)110(C)1110(D)1111
4、下面关于数据结构的叙述中,正确的叙述是-------()
(A)顺序存储方式的优点是存储密度大,且插、删除运算效率高(B)链表中每个结点都恰好包含一个指针
(C)包含n个结点的二叉排序树的最大检索长度为log-2n
(D)将一棵树转为二叉树后,根结点无右子树
5、程序段FOR I:=N-1 DOWNTO 1 DO
FOR J:=1 TO I DO
IF A[J]>A[J+1] THEN
A[J]与A[J+1] 对换;
其中n为正整数,则最后一行的语句频度在最坏情况下是()
(A)O(n)(B)O(nlogn)(C)O(n3)(D)O(n2)
6、某二叉树的前序遍历结点访问顺序为A B C D E F G,中序遍历结点访问顺序为C B D
A F G E,则其后序遍历结点访问顺序为----------------( )
(A) C D B G F E A (B) C D G F E A B
(C) C D B A G F E (D) C D B F A G E
7、对n个记录的序列进行快速排序,所需的辅助空间为--------------( )
(A)O(1) (B)O(log
n) (C)O(n) (D)O(n2)
2
8、对如下无向图G,若从顶点V1开始,按广度优先搜索去进行
遍历,则可能的访问顺序是---------( )
(A) V1 V2 V3 V4 V5 V6 V7 V8 (B) V1 V2 V6 V3 V4 V7 V8 V5
(C) V1 V2 V6 V3 V4 V5 V7 V8 (D) V1 V2 V6 V3 V4 V5 V8 V7
V1
/\
V2 V3
/\/\
V4 V5 V6 V7
\\//
\││/
\││/
V8
9、如果要求一个线性表既能较快查找,又能适应动态变化要求,可采用查找方法-------( )
(A) 分块 (B) 顺序 (C) 二分 (D) 散列
10、设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是e2、e4、e3、e6、e5、e1,则栈S 的容量至少应该是()(A)6 (B)4 (C)3 (D)2
三、简答题:(共40分)
1、设F是一个森林,B是按自然对应关系,由F构成的二叉树,试问F中非终端结点的个数与B中空右链的个数之间有什么数量关系?
2、试画出对应于公式y=3ln(x+1)-a/x2的树和相应的中序后继线索二叉树:
3、假设字符a,b,c,d,e,f出现的概率分别为0.07,0.09,0.12,0.22,0.23,0.27,求最优huffman编码,并画出huffman树。

4、对下面有向图,求⑴强连通分量⑵邻接矩阵:
F B A
E
5、试回答在插入排序,起泡排序,选择排序,shell排序,堆排序,二路归并排序,快速排序和基数排序的排序方法中,哪些是稳定的?哪些是不稳定的?并为任一种不稳定的排序方法举出一个不稳定实例?
四、设计或分析题:(20分)
1、试以单链表作存储结构:实现线性表的就地逆置算法:即在原表的存储空间内将线性表(a1,a2,....an)逆序为(an,an-1,...,a1)
2、以二叉链表作存储结构,编写复制一棵二叉树的递归算法。

《数据结构》试卷七
一、填空题:(共20分)
1、数据对象指具有的数据元素集合。

2、TAIL(HEAD((a,b),(c,d))))= 。

3、二维数组存储地址计算公式(以行序为主)为 (b为基地址,每个元素占存储单元数为l,下标取值范围为(c1,d1),(c2,d2))。

4.一个连通图的生成树是一个 .
5、顺序存储结构下,当时表示栈空。

6、二叉树结点的度 2,且树中子树有左右之分,不能颠倒,故二叉树是一
棵树。

7、高度为K的二叉树中至多有个结点。

8、对树的遍历有两种。

9.对长度为12的有序表进行折半查找,等概率时查找成功的平均查找长度为 .
10、○如图,树中叶子结点中的数值即该结点的权值,树的带权路径长度、树的 / \路径长度分别为。

①○
/ \
②○
/ \
二、选择题:(共20分)
1、下面关于线性表的叙述中,错误的是()
(A)线性表采用顺序存储,必顺占用一片连续的存储单元。

(B)线性表采用顺序存储,便于进行插入和删除操作。

(C)线性表采用链接存储,不必占用一片连续的存储单元
(D)线性表采用链接存储,便于插入和删除操作。

2、编号为1,2,3,4的四辆列车,顺序开进一个栈式结构栈台,则开出栈台顺序有( )种。

(A) 1 (B) 3 (C) 5 (D) 7
3、将n个元素的顺序表倒置,则至少需要的附加空间为( )
(A)0 (B)1 (C)n (D)n+1
4、n=1000,要求最快,且最省内存的排序方法为()
(A)快速排序 (B)shell排序 (C)归并排序 (D)堆排序
5、在构造散列表时,下面能采用的处理冲突的方法为( )
(A)开放定址法 (B)链地址法 (C)直接定址法 (D)再hash法
6、设森林F中有三棵树,第一、第二和第三棵树的结点个数分别为M1、M2和M3。

与森林F对应的二叉树根结点的右子树上的结点个数是
(A)M1(B)M1+M2(C)M3(D)M2+M3
7、在下列存储形式中,哪一个不是树的存储形式
A)双亲表示法 B)孩子链表表示法
B)孩子兄弟示法 D)顺序存储表示法
8、以下哪一个不是队列的基本运算?()
(A)从队尾插入一个新元素
(B)从队列中删除第i个元素
(C)判断一个队列是否为空
(D)读取队头元素的值
9、下面关于图的存储的叙述中正确的是()
(A)用相邻矩阵法存储图,占用的存储空间大小只与图中结点个
数有关,而与边数无关(B)用相邻矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关(C)用邻接表法存储图,占用的存储空间大小只与图中结点个数有关,而与边数无关(D)用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关 10、对线性表进行二分法查找,其前提条件是
(A)线性表以顺序方式存储,并且按关键码值排好序
(B)线性表以顺序方式存储,并且按关键码值的检索频率排好序(C)线性表以链接方式存储,并且按关键码值排好序
(D)线性表以链接方式存储,并且按关键码值的检索频率排好序
三、简答题:(共40分)
1、把图所示树表示成二元组形式和广义表形式:
a
/\
b c
/\\
d e f
//\
g h I
2、画出下列无向图的邻接表存储结构,并由邻接表写出广度优先搜索序列和深度优先搜索序列:
A
/│\
B─C─D
\│/
E
3、用快速排序法对下列整数序列进行排序,写出中间与最后结果。

[89,27,52,80,15,28,100,72]
4、如图所示的5阶B-树,试画出插入96后B-树的形状。

│10 15││35 40││55 60 68││72 75 80 85││92 95 98 100│└───┘└───┘└────┘└──────┘└──────┘
5、如图所示,对图G用prim算法构造一棵最小生成树,(由顶点a开始)要求能反映出树中顶点与边加入的顺序:
3
b e
6 5 5
a d 6
5 1 4 6
c f
2
四、设计或分析题:(共20分)
1、已知n个数据存入数组A[1..n]中,使用简单选择排序方法对数组中数据进行从大到小排序,写出算法。

2、写出对二叉树进行中序遍历的非递归算法
proc inorder(bt);{bt为二叉树根结点指针}
《数据结构》试卷八
一、填空题:(共20分)
1、线性结构是数据元素的非空有限集,存在唯一的最后一个元素,除该元素外,其余元素有直接后继.
2、Head[Tail[(b,k,m,g)]]= .
3、对n阶对称矩阵进行压缩存储,一般只存储中元素,此时只需个元素的存储空间.
4.带权路径长度最小的二叉树称做 .
5、若P指向单链表的尾结点时,则有P^.NEXT= 。

6、如图: a 该树中叶子结点,分支结点, 该树度分别为。

/ | \
b c d
/ \
e f
7、对顺序栈,当时表示栈满.若再有新元素入栈,则栈溢出。

8、对二叉树以某种遍历并加上线索的过程称为。

9、有序表是线性表(a1,a2,....an),并且表中元素关键字值ai.key有下列关系
10、AOV-网结点和有向边分别表示 .
二、选择题:(共20分)
1、下面关于线性表的叙述中,错误的是()
(A)线性表采用顺序存储,必顺占用一片连续的存储单元。

(B)线性表采用顺序存储,便于进行插入和删除操作。

(C)线性表采用链接存储,不必占用一片连续的存储单元
(D)线性表采用链接存储,便于插入和删除操作。

2、用直接插入排序方法对下面四个序列进行排序(由小到大),元素比较次数最少的是()
(A)94、32、40、90、80、46、21、69 (B)32、40、21、46、69、94、90、80 (C)21、32、46、40、80、69、90、94 (C)90、69、80、46、21、32、94、40 3、设森林F中有三棵树,第一、第二和第三棵树的结点个数分别为M1、M2和M3。

与森林F 对应的二叉树根结点的右子树上的结点个数是()
(A)M1(B)M1+M2(C)M3(D)M2+M3
4、用快速排序法对包含n个关键字的序列进行排序,最环情况下的执行时间为()
(A)O(log2n) (B)O(n) (C)O(nlog2n) (D)O(n2)
5、以下数据结构中哪一个是线性结构?()
(A)有向图(B)栈(C)线索二叉树(D)B树
6、单链表的每个结点中包括一个指针link,它指向该结点的后继结点。

现要将指针q指向的新结点插入到指针p指向的单链表结点之后,下面的操作序列中哪一个是正确的?()。

相关文档
最新文档