数据结构习题.docx
- 文档编号:10203435
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:21
- 大小:73.34KB
数据结构习题.docx
《数据结构习题.docx》由会员分享,可在线阅读,更多相关《数据结构习题.docx(21页珍藏版)》请在冰豆网上搜索。
数据结构习题
一.选择题
●第一章概述1----9
1.数据结构是一门研究非数值计算的程序设计问题中计算机的___
____以及它们之间的___
____和运算的学科。
A操作对象B计算方法C逻辑存储D数据映象
A结构B关系C运算D算法
答:
AB
2.数据结构被形式地定义为(K,R),其中K是___
___的有限集合,R是K上___
____的有限集合。
A算法B数据元素C数据操作D逻辑结构
A操作B映象C存储D关系
答:
BD
3.在数据结构中,从逻辑上可以把数据结构分为________
A.动态结构和静态结构B紧凑结构和非紧凑结构
C线性结构和非线性结构D内部结构和外部结构
答:
C
4.线性表的顺序存储结构是一种___
___的存储结构,线性表的链式存储结构是一种__
____的存储结构。
A随机存取B顺序存取C索引存取DHASH存取
答:
AB
5.算法分析的目的是___
___,算法分析的两个主要方面是__
____
A找出数据结构的合理性B研究算法中的输入和输出的关系
C分析算法的效率以求改进D分析算法的易懂性和文档性
A空间复杂性和时间复杂性B正确性和简明性
C可读性和文档性D数据复杂性和程序复杂性
答:
CA
6.计算机算法指的是___
___,它必具备输入、输出和__
___等五个特性
A计算方法B排序方法C解决某一问题的有限运算序列
D调度方法
A可执行性、可移植性和可扩充性B可执行性、确定性和有穷性
C确定性、有穷性和稳定性D易读性、稳定性和安全性
答:
CB
7.线性表的逻辑顺序与存储顺序总是一致的,这种说法________
A正确B不正确
答:
B
8.线性表若采用链表存储结构时,要求内存中可用存储单元的地址_______
A必须是连续的B部分地址必须是连续的
C一定是不连续的D连续不连续都可以
答:
D
9.在以下的叙述中,正确的是_____
A线性表的线性存储结构优于链表存储结构
B二维数组是它的每个数据元素为一个线性表的线性表
C栈的操作方式是先进先出
D队列的操作方式是先进后出
答:
B
●第二章顺序表10----18
10.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素得地址是____
A110B108C100D120
答:
B
11.一个栈的入栈序列是a,b,c,d,e,则栈的不可能输出序列是_____
AedcbaBdecbaCdceabDabcde
答:
C
12.若已知一个栈的入栈序列是1,2,3,。
。
。
n,其输出序列为p1,p2,p3…,pn,若p1=n,则pi为_____
AiBn=iCn―i+1D不确定
答:
C
13.栈结构通常采用的两种存储结构是_________
A顺序存储结构和链表存储结构B散列方式和索引方式
C链表存储结构和数组D线性存储结构和非线性存储结构
答:
A
14.栈的特点是___
___,队列的特点是__
____
A先进先出B后进先出
答:
BA
15.一个队列的入队序列是1,2,3,4,则队列的输出序列是_________
A4,3,2,1B1,2,3,4C1,4,3,2D3,2,4,1
答:
B
16.判定一个循环队列Q(最多元素为m0)为空的条件是_______
AQ.front==Q.RearBQ.front!
=Q.rear
CQ.front==(Q.rear+1)%m0DQ.front!
=(Q.rear+1)%m0
答:
A
17.判定一个循环队列Q(最多元素为m0)为满的条件是_______
AQ.front==Q.RearBQ.front!
=Q.rear
CQ.front==(Q.rear+1)%m0DQ.front!
=(Q.rear+1)%m0
答:
C
18.表达式a*(b+c)–d的后缀表达式是_______
Aabcd*+–Babc+*d–Cabc*+d–D–+*abcd
答:
B
●第三章链表19---25
19.不带头结点的单链表head为空的判定条件是_______
A.head==NULLBhead->next==NULL
Chead->next==headDhead!
=NULL
答:
A
20.带头结点的单链表head为空的判定条件是_______
A.head==NULLBhead->next==NULL
Chead->next==headDhead!
=NULL
答:
B
21.非空的循环单链表head的尾结点p满足________
Ap->next==NULLBp==NULL
Cp->next==headDp==head
答:
C
22.在循环双链表的p结点之后插入s结点的操作是_____
Ap->right=s;s->left=p;p->right->left=s;s->right=p->right;
Bp->right=s;p->right->left=s;s->left=p;s->right=p->right;
Cs->left=p;s->right=p->right;p->right=s;p->right->left=s;
Ds->left=p;s->right=p->right;p->right->left=s;p->right=s;
答:
D
23.在一个单链表中,已知q结点是p结点的前驱结点,若在q和p之间插入s结点,则执行__________
As->next=p->next;p->next=s;
Bp->next=s->next;s->next=p;
Cq->next=s;s->next=p;
Dp->next=s;s->next=q;
答:
C
24.在一个单链表中,若p结点不是最后结点,在p之后插入s结点,则执行__________
As->next=p;p->next=s;
Bs->next=p->next;p->next=s;
Cs->next=p->next;p=s;
Dp->next=s;s->next=p;
答:
B
25.在一个单链表中,若要删除p结点的后续结点,则执行__________
Ap->next=p->next->next;
Bp=p->next;p->next=p->next->next;
Cp->next=p->next;
Dp=p->next->next;
答:
A
●第四章 串 26----29
26.空串与空格串是相同的,这种说法______
A正确 B 不正确
答:
B
27.串是一个特殊的线性表,其特殊性体现在_____
A 可以顺序存储 B 数据元素是一个字符
C 可以链接存储 D 数据元素可以是多个字符
答:
B
28.设有两个串p和q,求q在p中首次出现的位置的运算称作_______
A 连接 B 模式匹配 C 求子串 D 求串长
答:
B
29.设串s1=‘ABCDEFG‘,s2=‘PQRST‘,函数con(x,y)返回x和y串的连接串,subs(s,I,j)返回串s的从序号I 的字符开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(s1,2,len(s2)),subs(s1,len(s2),2))的结果串是_____
A。
BCDEFB。
BCDEFGC。
BCPQRSTD。
BCDEFEF
答:
D
●第八章 30-----45
30.
答:
C
31.
答:
B
32.在线索化二叉树中,t所指结点没有左子树的充要条件是_______
A。
t->left==NULLBt->ltag==1
Ct->ltag==1且t->left==NULLD以上都不对
答:
B
33.二叉树按某种顺序线索化后,任一结点均有指向其前驱和后继的线索,这种说法____
A正确 B 不正确
答:
B
34.二叉树的前序遍历序列中,任意一个结点均处在其子女结点的前面,这种说法_____
A正确 B 不正确
答:
A
35.由于二叉树中每个结点的度最大为2,所以二叉树是一种特殊的树,这种说法_____
A正确 B 不正确
答:
B
36.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为_______
A2hB2h–1C2h+1Dh+1
答:
B
37.
答:
B
38.已知某二叉树的后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是_____
AacbedBdecab
CdeabcDcedba
答:
D
39.已知某二叉树的前序遍历序列是abdgcefh,中序遍历序列是dgbaechf,则它的后序遍历序列是_____
AbdgcefhaBgdbecfha
CbdgaechfDgdbehfca
答:
D
40.二叉树为二叉排序树的充分必要条件是其任一结点的值均大于其左孩子的值,小于其右孩子的值,这种说法_______
A.正确B不正确
答:
B
41.按照二叉树的定义,具有3个结点的二叉树有_____种
A3B4C5D6
答:
C
42.一棵二叉树如图所示,其中序遍历的序列为_________
AabdgcefhBdgbaechf
CgdbehfcaDabcedfgh
答:
B
43.深度为5的二叉树至多有_____个结点
A16B32C31D10
答:
C
44.在一非空二叉树的中序遍历序列中,根结点的右边_____
A只有右子树上的所有结点B只有右子树上的部分结点
C只有左子树上的部分结点D只有左子树上的所有结点
答:
A
45.树最适合用来表示______
A有序数据元素B无序数据元素
C元素之间具有分支层次关系的数据
D元素之间无联系的数据
答:
C
●第九章图46----58
46.在一个图中,所有顶点的度数之和等于所有边数的____倍
A1/2B1C2D4
答:
C
47.在一个有向图中,所有顶点顶点的入度之和等于所有顶点的出度之和的___倍
A1/2B1C2D4
答:
B
48.一个具有n个顶点的无向图最多有____条边。
AnBn(n–1)Cn(n–1)/2D2n
答:
C
49.具有4个顶点的无向完全图最多有____条边。
A6B12C16D20
答:
A
50.具有6个顶点的无向图至少应有____条边才能确保是一个连通图.
A5B6C7D8
答:
A
51.在一个具有n个顶点的无向图中,要连通全部顶点至少需要_____条边。
AnBn+1Cn-1Dn/2
答:
C
52.对于一个具有n个顶点的无向图,若采用邻接矩阵表示,则该矩阵的大小是____
AnB(n-1)2Cn-1Dn2
答:
D
53.对于一个具有n个顶点和e条边的无向图,若采用邻接链表表示,则表头向量的大小为___
___;所有邻接表中的结点总数是__
____
A.nB.n+1Cn-1Dn+e
Ae/2BeC2eDn+e
答:
AC
54.已知一个图如图所示,若从顶点a出发按深度搜索法进行遍历,则可能得到的一种顶点序列为___
___;按广度搜索法进行遍历,则可能得到的一种顶点序列为_
___
A.a,b,e,c,d,fBa,c,f,e,b,dCa,e,b,c,f,dDa,e,d,f,c,b
Aa,b,c,e,d,fBa,b,c,e,f,dCa,e,b,c,f,dDa,c,f,d,e,b
答:
DB
55.已知一个有向图的邻接表存储结构如图所示
根据有向图的深度优先遍历算法,从顶点v1出发,所得到的顶点序列是____
Av1,v2,v3,v5,v4Bv1,v2,v3,v4,v5
Cv1,v3,v4,v5,v2Dv1,v4,v3,v5,v2
根据有向图的深度优先遍历算法,从顶点v1出发,所得到的顶点序列是____
Av1,v2,v3,v4,v5Bv1,v3,v2,v4,v5
Cv1,v2,v3,v5,v4Dv1,v4,v3,v5,v2
答:
CB
56.采用邻接表存储的图的深度优先遍历算法类似于二叉树的_____
A先序遍历B中序遍历C后序遍历D按层遍历
答:
A
57.采用邻接表存储的图的广度优先遍历算法类似于二叉树的_____
A先序遍历B中序遍历C后序遍历D按层遍历
答:
D
58.判定一个有向图是否存在回路除了可以用拓扑排序方法外,还可以利用____
A求关键路径的方法B求最短路径的Dijkstra方法
C广度优先遍历算法D深度优先遍历算法
答:
D
●第十章查找59---67
59.顺序查找方法适合于存储结构为_____的线性表。
A散列存储B顺序存储或链接存储
C压缩存储D索引存储
答:
B
60.对线性表进行二分查找时,要求线性表必须_____
A以顺序方式存储B以链接方式存储
C以顺序方式存储,且结点按关键字有序排序
D以链接方式存储,且结点按关键字有序排序
答:
C
61.采用顺序查找方法查找长度为n的线性表时,每个元素的平均查找长度为____
AnBn/2C(n+1)/2D(n-1)/2
答:
C
62.采用二分查找方法查找长度为n的线性表时,每个元素的平均查找长度为____
AO(n2)BO(nlog2n)CO(n)DO(log2n)
答:
D
63.二分查找和二叉排序树的时间性能______
A相同B不相同
答:
B
64.有一个有序表为{1,3,9,12,32,41,45,62,75,77,82,95,100},当二分查找值为82的结点时,____次比较后查找成功。
A1B2C4D8
答:
C
65.设哈希表长m=14,哈希函数H(key)=keyMod11.表中已有4个结点:
add(15)=4add(38)=5add(61)=6add(84)=7其余地址为空,如用二次探测再散列处理冲突,关键字为49的结点的地址是_____
A8B3C5D9
答:
D
66.有一个长度为12的有序表,按二分查找法对该表进行查找,在表内各元素等概率情况下,查找成功所需的平均比较次数为_______
A35/12B37/12C39/12D43/12
答:
B
67.如果要求一个线性表既能较快地查找,又能适应动态变化的要求,可以采用_____查找方法。
A分块B顺序C二分D散列
答:
A
●第十一章排序68----79
68.在所有排序算法中,关键字比较的次数与记录的初始排列次序无关的是______
A希尔排序B起泡排序(改进后)C插入排序D选择排序
答:
D
69.设有1000个无序的元素,希望用最快的速度挑选出其中前10个最大的元素,最好选用______排序法。
A起泡排序B快速排序C堆排序D基数排序
答:
C
70.在待排序的元素序列基本有序的前提下,效率最高的排序方法是_______
A.插入排序B选择排序C快速排序D归并排序
答:
A
71.一组记录的排序码为{46,79,56,38,40,84},则利用堆排序的方法建立的初始堆为_____
A79,46,56,38,40,80
B84,79,56,38,40,46
C84,79,56,46,40,38
D84,56,79,40,46,38
答:
B
72.一组记录的关键码为{46,79,56,38,40,84},则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为_____
A38,40,46,56,79,84
B40,38,46,79,56,84
C40,38,46,56,79,84
D40,38,46,84,56,79
答:
C
73.一组记录的排序码为{25,48,16,35,79,82,23,40,36,72},其中含有5个长度为2的有序表,按归并排序的方法对该序列进行一趟归并后的结果为______
A16253548234079823672
B16253548798223364072
C16254835798223364072
D16253548792336407282
答:
A
74.排序方法中,从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将其放入已排序序列中的正确位置上的方法,称为_____
A希尔排序B起泡排序C插入排序D选择排序
答:
C
75.排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端的方法,称为_____
A希尔排序B归并排序C插入排序D选择排序
答:
D
76.用某种排序方法对线性表(25,84,21,47,15,27,68,35,20)进行排序时,元素序列的变化情况如下:
25,84,21,47,15,27,68,35,20
20,15,21,25,47,27,68,35,84
15,20,21,25,35,27,47,68,84
15,20,21,25,27,35,47,68,84
则所采用的排序方法是____
A选择排序B希尔排序C归并排序D快速排序
答:
D
77.下述几种排序方法中,平均查找长度最小的是_____
A插入排序B选择排序C快速排序D归并排序
答:
C
78.下述几种排序方法中,要求内存量最大的是是_____
A插入排序B选择排序C快速排序D归并排序
答:
D
79.快速排序方法在___情况下最不利于发挥其长处
A要排序的数据量太大
B要排序的数据中含有多个相同值
C要排序的数据已经基本有序
D要排序的数据个数为奇数
答:
C
二.填空题
第1章
1.在线性结构中,开始结点_________前驱结点,其余每个结点有且只有_____个前驱结点;终端结点_________后续结点,其余每个结点有且只有______个后续结点。
答:
没有;1;没有;1
2.在树型结构中,树根结点没有_________结点,其余每个结点有且只有_____个前驱结点;叶子结点没有______结点,其余每个结点的后续结点可以_______
答:
前驱;1;后续;任意多个
3.在图形结构中,每个结点的前驱结点数和后续结点数可以________
答:
任意多个
4.下面程序段的时间复杂度是________
for(I=1;I<=n;I++)
for(j=1;j<=m;j++)
a[I][j]=I–j;
答:
O(m*n)
第2章
5.向一个长度为n的向量的第I个元素(1<=I<=n+1)之前插入一个元素时,需向后移动______个元素。
答:
n-I+1
6.从一个长度为n的向量中删除第I个元素(1<=I<=n)时,需向前移动______个元素。
答:
n-I
7.向栈中推入元素的操作是______________________________
答:
先移动栈顶指针,后存入元素
8.对栈进行退栈时的操作是____________________________
答:
先取出元素,后移动栈顶指针
9.在一个循环队列中,队首指针指向队首元素的_________________
答:
前一个位置
10.从循环队列中删除一个元素时,其操作是________________________
答:
先移动队首元素,后取出元素
11在具有n个单元的循环队列中,队满时共有________个元素。
答:
n-1
第3、4、8章
12.指出树和二叉树的三个主要差别
答:
树的结点个数至少为1,而二叉树的结点个数可以为0;树中结点的最大度数没有限制,而二叉树结点的最大度数为2;树的结点无左、右之分,而二叉树的结点有左、右之分。
13.深度为k的完全二叉树至少有_____个结点,至多有_______个结点。
答:
2k-1;2k-1
14.在一棵二叉树中,度为零的结点的个数为n0,度为2的结点的个数为n2,则有n0=_______.
答:
n2+1
15.一棵二叉树的第I(I>=1)层最多有________个结点;一棵有n(n>0)个结点的满二叉树共有___________个叶子和____________个非终端结点。
答:
2I-1;2[log2n];2[log2n]–1
16.结点最少的二叉树是______________
答:
空二叉树
17.现有按中序遍历二叉树的结果为abc,问有_______种不同形态的二叉树可以得到这一遍历结果,这些二叉树分别是____
答:
5
18.根据二叉树的定义,具有三个结点的二叉树有_______种不同形态,它们分别是____
答:
5
三、简答题
1.二叉树的顺序存储、先序、中序、后序遍历
2.哈夫曼编码,哈夫曼树,WPL
3.课本P1586-9
(2)6-10
(2)6-12
(1)
4.二叉排序树的创建、中序遍历
5.使用Krulcal算法生成
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 习题
![提示](https://static.bdocx.com/images/bang_tan.gif)