数据结构试题库集及答案
数据结构试题库及答案
第一章 概论
一、选择题
1、研究数据结构就是研究( D)。
A.数据的逻辑结构 B.数据的存储结构
C.数据的逻辑结构和存储结构 D.数据的逻辑结构、存储结构及其基本操作
2、算法分析的两个主要方面是(A)。
A. 空间复杂度和时间复杂度 B. 正确性和简单性 C. 可读性和文档性 D. 数据复杂性和程序复杂性
3、具有线性结构的数据结构是(D)。
A.图 B.树 C.广义表 D.栈
4、计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备输入、输出、(B)等5个特性。
A. 可执行性、可移植性和可扩充性 B. 可执行性、有穷性和确定性
C. 确定性、有穷性和稳定性 D. 易读性、稳定性和确定性
5、下面程序段的时间复杂度是( C)。
for(i=0;i
for(j=0;j
a[i][j]=i*j;
A. O(m2) B. O(n2) C. O(m*n) D. O(m+n)
6、算法是( D)。
A.计算机程序 B.解决问题的计算方法 C.排序算法 D.解决问题的有限运算序列
7、某算法的语句执行频度为(3n+nlog2n+n2+8),其时间复杂度表示(C)。
A. O(n) B. O(nlog2n) C. O(n2) D. O(log2n)
8、下面程序段的时间复杂度为(C)。
i=1;
while(i<=n)
i=i*3;
A. O(n) B. O(3n) C. O(log3n) D. O(n3)
9、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的()和运算等的学科。
A. 结构 B. 关系 C.运算 D. 算法
10、下面程序段的时间复杂度是()。
i=s=0;
while(s
i++;s+=i;
}
A. O(n) B. O(n2) C. O(log2n) D. O(n3)
11、抽象数据类型的三个组成部分分别为()。
A. 数据对象、数据关系和基本操作 B.数据元素、逻辑结构和存储结构
C. 数据项、数据元素和数据类型 D. 数据元素、数据结构和数据类型
12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是()。
A. 正确性算法应能正确地实现预定的功能
B.易读性算法应易于阅读和理解,以便调试、修改和扩充
C.健壮性当环境发生变化时,算法能适当地做出反应或进行处理,不会产生不需要的运行结果
D. 高效性即达到所需要的时间性能
13、下列程序段的时间复杂度为()。
x=n;y=0;
while(x>=(y+1)*(y+1))
y=y+1;
A.O(n) B.)(nO C. O(1) D.O(n2)
二、填空题
1、程序段“i=1;while(i<=n) i=i*2;”的时间复杂度为。
2、数据结构的四种基本类型中,树形结构的元素是一对多关系。
三、综合题
1、将数量级O(1),O(N),O(N2),O(N3),O(NLOG2N),O(LOG2N),O(2N)按增长率由小到大排序。
答案: O(1) O(log2N) O(N) O(Nlog2N) O(N2) O(N3) O(2N)
一、填空题
1. 数据结构被形式地定义为(D, R),其中D是数据元素的有限集合,R是D上的关系有限集合。
2. 数据结构包括数据的逻辑结构、数据的存储结构和数据的运算这三个方面的内容。
3. 数据结构按逻辑结构可分为两大类,它们分别是线性结构和非线性结构。
4. 线性结构中元素之间存在一对一关系,树形结构中元素之间存在一对多关系,图形结构中元素之间存在多对多关系。
5.在线性结构中,第一个结点没有前驱结点,其余每个结点有且只有1个前驱结点;最后一个结
点没有后续结点,其余每个结点有且只有1个后续结点。
6. 在树形结构中,树根结点没有前驱结点,其余每个结点有且只有1个前驱结点;叶子结点没有后续结点,其余每个结点的后续结点数可以任意多个。
7. 在图形结构中,每个结点的前驱结点数和后续结点数可以任意多个。
8.数据的存储结构可用四种基本的存储方法表示,它们分别是顺序、链式、索引、散列。
9. 数据的运算最常用的有5种,它们分别是插入、删除、修改、查找、排序。
10. 一个算法的效率可分为时间效率和空间效率。
11.任何一个C程序都由一个主函数和若干个被调用的其它函数组成。
二、单项选择题
(B)1. 非线性结构是数据元素之间存在一种:
A)一对多关系 B)多对多关系 C)多对一关系 D)一对一关系
(C)2. 数据结构中,与所使用的计算机无关的是数据的结构;
A)存储 B)物理 C)逻辑 D)物理和存储
(C)3. 算法分析的目的是:
A)找出数据结构的合理性 B)研究算法中的输入和输出的关系
C) 分析算法的效率以求改进 D)分析算法的易懂性和文档性
(A)4. 算法分析的两个主要方面是:
A)空间复杂性和时间复杂性 B)正确性和简明性
C)可读性和文档性 D)数据复杂性和程序复杂性
(C)5. 计算机算法指的是:
A)计算方法 B) 排序方法 C)解决问题的有限运算序列 D)调度方法
(B)6. 计算机算法必须具备输入、输出和等5个特性。
A)可行性、可移植性和可扩充性 B)可行性、确定性和有穷性
C)确定性、有穷性和稳定性 D)易读性、稳定性和安全性
三、简答题
1.数据结构和数据类型两个概念之间有区别吗?
答:简单地说,数据结构定义了一组按某些关系结合在一起的数组元素。数据类型不仅定义了一组带结构的数据元素,而且还在其上定义了一组操作。
2. 简述线性结构与非线性结构的不同点。
答:线性结构反映结点间的逻辑关系是一对一的,非线性结构反映结点间的逻辑关系是多对多的。
四、分析下面各程序段的时间复杂度
五、设有数据逻辑结构S=(D,R),试按各小题所给条件画出这些逻辑结构的图示,并确定其是哪种逻辑结构。
1. D={d1,d2,d3,d4} R={(d1,d2),(d2,d3),(d3,d4) }
2. D={d1,d2,…,d9}
R={(d1,d2),(d1,d3),(d3,d4),(d3,d6),(d6,d8),(d4,d5), (d6,d7),(d8,d9) }
3.D={d1,d2,…,d9}
R={(d1,d3),(d1,d8),(d2,d3),(d2,d4),(d2,d5),(d3,d9), (d5,d6),(d8,d9),(d9,d7), (d4,d7),(d4,d6)}
第二章 线性表
一、选择题
1、若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素算法的时间复杂度()。
A. O(log2n) B.O(1) C. O(n) D.O(n2)
2、若一个线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用()存储方式最节省时间。
A. 顺序表 B. 单链表 C. 双链表 D. 单循环链表
3、具有线性结构的数据结构是()。
A.图 B.树 C.广义表 D.栈
4、在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需向后移动()个元素。
A. n-i B. n-i+1 C. n-i-1 D. i
5、非空的循环单链表head的尾结点p满足()。
A. p->next==head B. p->next==NULL
C. p==NULL D. p==head
6、链表不具有的特点是()。
A. 可随机访问任一元素 B. 插入删除不需要移动元素
C. 不必事先估计存储空间 D. 所需空间与线性表长度成正比
7、在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是()。
A. p->next=q;q->prior=p;p->next->prior=q;q->next=q; 2. s=0;
for (i=0; i
for(j=0; j
s+=B[i][j];
sum=s;
1. for (i=0; i
for (j=0; j
A[i][j]=0;
3. x=0;
for(i=1; i
for (j=1; j<=n-i; j++)
x++;
4. i=1;
while(i<=n)
i=i*3;
B. p->next=q;p->next->prior=q;q->prior=p;q->next=p->next;
C. q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;
D. q->next=p->next;q->prior=p;p->next=q;p->next=q;
8、线性表采用链式存储时,结点的存储地址()。
A. 必须是连续的 B. 必须是不连续的
C. 连续与否均可 D. 和头结点的存储地址相连续
9、在一个长度为n的顺序表中删除第i个元素,需要向前移动()个元素。
A. n-i B. n-i+1 C. n-i-1 D. i+1
10、线性表是n个()的有限序列。
A. 表元素 B. 字符 C. 数据元素 D. 数据项
11、从表中任一结点出发,都能扫描整个表的是()。
A. 单链表 B.顺序表 C. 循环链表 D.静态链表
12、在具有n个结点的单链表上查找值为x的元素时,其时间复杂度为()。
A. O(n) B. O(1) C. O(n2) D. O(n-1)
13、线性表L=(a1,a2,……,an),下列说法正确的是()。
A. 每个元素都有一个直接前驱和一个直接后继
B.线性表中至少要有一个元素
C.表中诸元素的排列顺序必须是由小到大或由大到小
D.除第一个和最后一个元素外,其余每个元素都由一个且仅有一个直接前驱和直接后继
14、一个顺序表的第一个元素的存储地址是90,每个元素的长度为2,则第6个元素的存储地址是()。
A. 98 B.100 C. 102 D.106
15、在线性表的下列存储结构中,读取元素花费的时间最少的是()。
A. 单链表 B. 双链表 C. 循环链表 D. 顺序表
16、在一个单链表中,若删除p所指向结点的后续结点,则执行()。
A. p->next=p->next->next;
B. p=p->next;p->next=p->next->next;
C. p =p->next;
(完整版)数据结构试题及答案
(完整版)数据结构试题及答案
一、选择题
1. 数据结构是一门研究非数值计算中计算机数据的组织、管理和存储、检索的学科,以下哪项不是数据结构的研究内容?
A. 数据的存储结构
B. 数据的逻辑结构
C. 数据的检索方法
D. 数据的传输方式
答案:D
2. 在数据结构中,线性表是一种常见的数据结构,以下哪项不是线性表的特征?
A. 有且只有一个根节点
B. 每个节点最多有一个直接前驱和一个直接后继
C. 每个节点最多有一个直接前驱和多个直接后继
D. 表中元素呈线性排列 答案:C
3. 在链表中,若要删除第i个元素,以下操作正确的是?
A. 直接删除第i个节点
B. 将第i个节点的前一个节点的next指针指向第i个节点的后一个节点
C. 将第i个节点的后一个节点的前一个节点的next指针指向第i个节点
D. 将第i个节点的数据清零
答案:B
4. 在二叉树中,若度为0的节点个数为n0,度为2的节点个数为n2,则n0与n2的关系为?
A. n0 = n2 + 1
B. n0 = n2 - 1
C. n0 = n2 + 2
D. n0 = n2 - 2
答案:A
5. 在排序算法中,以下哪种排序算法的平均时间复杂度最低? A. 冒泡排序
B. 选择排序
C. 插入排序
D. 快速排序
答案:D
二、填空题
6. 在线性表中,线性表中的元素可以是基本的数据类型,也可以是复合的数据类型,如______。
答案:结构体
7. 在链表中,若要插入一个节点,通常需要执行以下三个步骤:①______、②______、③______。
答案:①申请一个新节点 ②将新节点插入到链表中 ③释放原节点
8. 在二叉树中,任意节点的左子树和右子树分别为______和______。
数据结构试题集(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)21i (C) 21i (D) i
3、设电文中出现的字母为A,B,C,D,E,每个字母在电文中出现的次数分别为9,27,3,5,11,按huffman编码,则字母A编码为( )
数据结构考试试题库含答案解析
数据结构考试试题库含答案解析
数据结构习题集含答案
⽬录
⽬录 (1)
选择题 (2)
第⼀章绪论 (2)
第⼆章线性表 (4)
第三章栈和队列 (6)
第四章串 (7)
第五章数组和⼴义表 (8)
第六章树和⼆叉树 (8)
第七章图 (11)
第⼋章查找 (13)
第九章排序 (14)
简答题 (19)
第⼀章绪论 (19)
第⼆章线性表 (24)
第三章栈和队列 (26)
第四章串 (28)
第五章数组和⼴义表 (29)
第六章树和⼆叉树 (31)
第七章图 (36)
第⼋章查找 (38)
第九章排序 (39)
编程题 (41)
第⼀章绪论 (41)
第⼆章线性表 (41)
第三章栈和队列 (52)
第四章串 (52)
第五章数组和⼴义表 (52)
第六章树和⼆叉树 (52)
第七章图 (52)
第⼋章查找 (52)
第九章排序 (57)
选择题第⼀章绪论1.数据结构这门学科是针对什么问题⽽产⽣的?(A )
A、针对⾮数值计算的程序设计问题
B、针对数值计算的程序设计问题
C、数值计算与⾮数值计算的问题都针对
D、两者都不针对
2.数据结构这门学科的研究内容下⾯选项最准确的是(D )
A、研究数据对象和数据之间的关系
B、研究数据对象
C、研究数据对象和数据的操作
D、研究数据对象、数据之间的关系和操作
3.某班级的学⽣成绩表中查得张三同学的各科成绩记录,其中数据结构考了90
分,那么下⾯关于数据对象、数据元素、数据项描述正确的是(C )A、某班级的学⽣成绩表是数据元素,90分是数据项
B、某班级的学⽣成绩表是数据对象,90分是数据元素
C、某班级的学⽣成绩表是数据对象,90分是数据项
D、某班级的学⽣成绩表是数据元素,90分是数据元素
4.*数据结构是指(A )。
A、数据元素的组织形式
B、数据类型
C、数据存储结构
D、数据定义
5.数据在计算机存储器内表⽰时,物理地址与逻辑地址不相同,称之为(C )。
A、存储结构
B、逻辑结构
C、链式存储结构
D、顺序存储结构
6.算法分析的⽬的是(C )
A、找出数据的合理性
《数据结构》试题集及答案
《数据结构》试题集及答案
第⼀部分 选择题(30分)
⼀、⼀、项选择题(本⼤题共15⼩题,每⼩题2分,共30分)在每⼩题列出的
四个选项中只有⼀个选项是符合题⽬要求的,请将正确选项前的字母填在题
后的括号内。1.算法指的是( )
A .计算机程序
B .解决问题的计算⽅法
C .排序算法
D .解决问题的有限运算序列
2.线性表采⽤链式存储时,结点的存储地址( )
A .必须是不连续的
B .连续与否均可
C .必须是连续的
D .和头结点的存储地址相连续
3.将长度为n 的单链表链接在长度为m 的单链表之后的算法的时间复杂度为
( )A .O (1)
B .O (n )
C .O (m )
D .O (m+n )
4.由两个栈共享⼀个向量空间的好处是:( )
A .减少存取时间,降低下溢发⽣的机率
B .节省存储空间,降低上溢发⽣的机率
C .减少存取时间,降低上溢发⽣的机率
D .节省存储空间,降低下溢发⽣的机率
5.设数组data[m]作为循环队列SQ 的存储空间,front 为队头指针,rear 为队尾
指针,则执⾏出队操作后其头指针front 值为( )A .front=front+1
B .front=(front+1)%(m-1)
C .front=(front-1)%m
D .front=(front+1)%m
6.如下陈述中正确的是( )
A .串是⼀种特殊的线性表
B .串的长度必须⼤于零
C .串中元素只能是字母
D .空串就是空⽩串
7.若⽬标串的长度为n ,模式串的长度为[n/3],则执⾏模式匹配算法时,在最
坏情况下的时间复杂度是( )A .O (n 3)
B .O (n )
C .O (n 2)
D .O (n 3)
8.⼀个⾮空⼴义表的表头( )
A .不可能是⼦表
B .只能是⼦表
C .只能是原⼦
D .可以是⼦表或原⼦
9.假设以带⾏表的三元组表表⽰稀疏矩阵,则和下列⾏表
0 2 3 3 5
对应的稀疏矩阵是( )A.
0806
7000
0000
5040
期末数据结构试题及答案
期末数据结构试题及答案
期末数据结构试题(A)参考答案
班别学号姓名成绩
⼀、单项选择(每⼩题2分,共24分)1.若某线性表的常⽤操作是取第i个元素及其前趋元素,则采⽤( A )存储⽅式最节省时间
A.顺序表
B.单链表
C.双链表
D.单向循环
2.串是任意有限个( B )
A.符号构成的序列
B.字符构成的序列
C.符号构成的集合
D.字符构成的集合
3.设矩阵A(aij,1<=i,j<=10)的元素满⾜:
aij<>0(i>=j,1<=i,j<=10),aij =0 (i
若将A的所有⾮0元素以⾏为主序存于⾸地址为2000的存储区域中,每个元素占4个单元,则元素A[59]的⾸地址为( C )A.2340
B.2336
C.2220
D.2160
4.如果以链表作为栈的存储结构,则退栈操作时( D )
A.必须判别栈是否满⼲
B.对栈不作任何判别
C.判别栈元素的类型
D.必须判别栈是否空
5.设数组Data[0..m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执⾏出队操作的语句为( A )
A.front=(front+1)%(m+1)
B.front=(front+1)% m
C.rear=(rear+1)% m
D. front=front+1
6.深度为6(根的层次为1)的⼆叉树⾄多有( B )结点
A.64
B.63
C.31D.32
7.将含100个结点的完全⼆叉树从根这⼀层开始,每层从左⾄右依次对结点编号,根结点的编号为1。编号为47的结点X的双亲的编号为( C )A.24
B.25
C.23
D.2⽆法确定
8.设有⼀个⽆向图G=(V,E)和G'=(V',E'),如果G'为G的⽣成树,则下⾯不正确的说法是( D)
A.G'为G的⼦图
B.G'为G的⼀个⽆环⼦图
C.G'为G的极⼩连通⼦图且V'=V
D.G'为G的连通分量
9.⽤线性探测法查找闭散列上,可能要探测多个散列地址,这些位置上的键值( D )
A.⼀定都是同义词
B.⼀定都不是同义词
专升本十套-数据结构(试题及答案)
专升本⼗套-数据结构(试题及答案)
数据结构试卷(⼀)
⼀、单选题(每题2分,共20分)1.栈与队列得共同特点就是( )。
A、只允许在端点处插⼊与删除元素
B、都就是先进后出C、都就是先进先出
D、没有共同点
2.⽤链接⽅式存储得队列,在进⾏插⼊运算时()、
A、仅修改头指针
B、头、尾指针都要修改
C、仅修改尾指针D、头、尾指针可能都要修改
3.以下数据结构中哪⼀个就是⾮线性结构?( )
A、队列B、栈C、线性表D、⼆叉树4.设有⼀个⼆维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存
放位置在676(10),每个元素占⼀个空间,问A[3][3](10)存放在什么位置?脚注(10)表⽰⽤10进制表⽰。A.688 B.678 C.692D.696
5.树最适合⽤来表⽰()。
A、有序数据元素B、⽆序数据元素C、元素之间具有分⽀层次关系得数据
D、元素之间⽆联系得数据
6.⼆叉树得第k层得结点数最多为( )、
A。2k—1 B、2K+1 C、2K-1 D、 2k-17.若有18个元素得有序表存放在⼀维数组A[19]中,第⼀个元素放A[1]中,现进
⾏⼆分查找,则查找A[3]得⽐较序列得下标依次为( )A、1,2,3 ??B、9,5,2,3
C、9,5,3
D、9,4,2,3
8.对n个记录得⽂件进⾏快速排序,所需要得辅助存储空间⼤致为
A、O(1)B、O(n) C、 O(1og2n) D、 O(n2)
9.对于线性表(7,34,55,25,64,46,20,10)进⾏散列存储时,若选⽤H(K)=K %9
作为散列函数,则散列地址为1得元素有()个,A。1 B.2 C.3 D.4
10.设有6个结点得⽆向图,该图⾄少应有()条边才能确保就是⼀个连通图。
A、5B、6
C、7 D、8
⼆、填空题(每空1分,共26分)1.通常从四个⽅⾯评价算法得质量:_________、_________、_________与______
数据结构试题库
第1 页共100 页数据结构试题库一、单项选择题1.下列程序段所代表的算法的时间复杂度为(D )。x=n; y=0; while (x>=(y+1)*(y+1)) y++;(A)O(n) (B)O(n2) (C)O(log2n) (D)O(n) 2.在一个长度为n的以顺序结构存储的线性表中,假设在线性表的任何位置删除元素的概率相等,则删除一个元素时线性表所需移动元素的平均次数为(B )。(A) n2 (B)(n-1)/2 (C)(n+1)/2 (D)n/2 3.在一个栈顶指针为HS的链栈中插入一个*s结点时,应执行执行操作为(C )。(A)HS->next=s;(B)s->next=HS->next;HS->next=s; (C)s->next=HS;HS=s;(D)s->next=HS;HS=HS>next; 4.假设以带头结点的循环链表表示队列Q,并且队列只设一个头指针front,不设队列尾指针。若要进队一个元素*s,则在下列程序算法的空白处应添加的操作语句是(A )。void AddQueue(struct linkqueue Q) { p=Q->front; while(p->next!=Q->front) p=p->next; } (A)p->next=s;s->next=Q->front; (B)Q->front->next=s;Q->front=s; (C)s->next=p;p->next=Q->front; (D)Q->front->next=s;s->next=p; 5.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为(B )。(A)2h-1(B)2h-1+1 (C)2h-1 (D)2h-1-3
第2 页共100 页6.现有数据集{53,30,37,12,45,24,96},从空二叉树逐个插入数据形成二叉排序树,若希望查找此二叉树中任一结点的平均查找长度最小,则应选择下面哪个序列输入(C )。(A)45,24,53,12,37,96,30 (B) 30,24,12,37,45,96,53 (C) 37,24,12,30,53,45,96 (D) 12,24,30,37,45,53,96 7.有一组数值{5,12,9,20,3},用以构造哈夫曼树,则其带权路径长度WPL值为(D )。(A)93 (B)96 (C)123 (D)103 8.已知一个有向图G的顶点v={v1,v2,v3,v4,v5,v6},其邻接表如下图所示,根据有向图的深度优先遍历算法,从顶点v1出发,所得到的顶点遍历序列是(B )。(A)v1,v2,v3,v6,v4,v5 (B)v1,v2,v3,v6,v5,v4 (C)v1,v2,v5,v6,v3,v4 (D)v1,v2,v5,v3,v4,v6 v1 v2 ^ v3 v4 ^ v5 v6 ^ 9.设有m=2n-1个关键字,假设对每个关键字查找的概率相等,查找失败的概率为0,若采用二分法查找一个关键字,则平均查找长度为(D )。(A)n-1 (B) n-n/m (C) (n-1)-n/m (D) (n-1)+n/m 10.已知一个待散列存储的线性表{18,81,58,34,26,75,67,49,93},散列函数为h(k)=k%11,散列地址空间为0~10。若采用线性探查法解决冲突,则平均查找长度为(A )。(A)5/3 (B)13/9 (C)16/9 (D)3/2 11.下列程序段所代表的算法的时间复杂度为(C )。y=n; x=1; v2 v5 v4 ^ v3 v5 ^ v4 v6 ^ v6 ^ v3 ^
数据结构试卷A卷(含答案)
数据结构试卷A卷(含答案)
《数据结构》试卷A
⼀、填空题(每空1分,共22分)1、数据结构被形式地定义为(D, R),其中D是的有限集合,R是D上的有限集合。
2、⼀个算法的效率可分为效率和效率。
3、向⼀个长度为n的向量的第i个元素(1≤i≤n+1)之前插⼊⼀个元素时,需向后移动________个元素。
4、在⼀个循环队列中,队⾸指针指向队⾸元素的位置。
5、在具有n个单元的循环队列中,队满时共有个元素。
6、向栈中压⼊元素的操作是先,后。
7、称为空串;称为空⽩串。
8、假设有⼆维数组A6×8,每个元素⽤相邻的6个字节存储,存储器按字节编址。已知A的起始存储位置(基地址)为1000,则数组A的体积(存储量)为;末尾元素A57的第⼀个字节地址为;若按⾏存储时,元素A14的第⼀个字节地址
为;若按列存储时,元素A47的第⼀个字节地址为。9、设⼀棵完全⼆叉树具有1000个结点,则此完全⼆叉树有个叶⼦结点,有个度为2的结点,有个结点只有⾮空左⼦树,有个结点只有⾮空右⼦树。10、线性有序表(a1,a2,a3,…,a256)是从⼩到⼤排列的,对⼀个给定的值k,⽤⼆分法检索表中与k相等的元素,在查找不成功的情况下,最多需要检索次。设有100个结点,⽤⼆分法查找时,最⼤⽐较次数是。11、散列法存储的基本思想是由决定数据的存储地址。
⼆、判断题(每题1分,共10分)
()1. 队是⼀种插⼊与删除操作分别在表的两端进⾏的线性表,是⼀种先进后出型结构。()2.⼆叉树中所有结点个数是2k-1-1,其中k是树的深度。
()3. 栈和队列的存储⽅式既可是顺序⽅式,也可是链接⽅式。
()4.⼆叉树中所有结点,如果不存在⾮空左⼦树,则不存在⾮空右⼦树。
()5.对于⼀棵⾮空⼆叉树,它的根结点作为第⼀层,则它的第i层上最多能有2i-1个结点。
()6. 链表的删除算法很简单,因为当删除链中某个结点后,计算机会⾃动将后续各个单元向前移动。
()7.⽤⼆叉链表法(link-rlink)存储包含n个结点的⼆叉树,结点的2n个指针区域中有n+1个为空指针。
数据结构试题及答案.docx
数据结构试题及答案.docx
数据结构试题及答案
⼀、选择题(每⼩题2分,共20分),每个题的备选答案中,只有⼀个是正确的,请将答案填写在试题的括号中。1、对顺序存储的线性表,设其长度为20,在任何位置上插⼊或删除操作都是
等概率的。插⼊⼀个元素时平均要移动表中的( A )个元素。A.10 B.9 C.11 D.12
2、若某线性表中最常⽤的操作是在最后⼀个元素之后插⼊⼀个元素和删除第⼀个元素,则采⽤( D )存储⽅式最节省运算时间。A.单链表 B.仅有头指针的单循环链表
C.双链表 D.仅有尾指针的单循环链表
3、当利⽤⼤⼩为n的数组顺序存储⼀个栈时,假定⽤top==n表⽰栈空,则向这个栈插⼊⼀个元素时,⾸先应执⾏( B )语句修改top指针。A.top++ B.top-- C.top = 0 D.top
4、设⼊栈顺序为A,B,C,D,E,则出栈序列不可能是( C )。A.EDCBA B.ABCDE C.ADEBC D.ABDEC
5、已知关键字序列(46, 79, 56, 38, 40, 84),采⽤快速排序(以位于最左位
置的关键字为基准)得到的第⼀次划分结果为:( A )A.{ 40, 38, 46, 56, 79, 84 } B.{ 38, 46, 79, 56, 40, 84 }
C.{ 38, 46, 56, 79, 40, 84 } D.{ 40, 38, 46, 79, 56, 84 }
6、⼀个有n个顶点和n条边的⽆向图⼀定是( C )。
A.不连通的 B.连通的 C.有环的 D.⽆环的
7、在⼀棵具有n个结点的⼆叉树的第i层上,最多具有( B )个结点。
A.2i B.2i-1 C.2i+1 D.2n
8、对线性表采⽤折半查找法,该线性表必须( B )。
A.采⽤顺序存储结构B.采⽤顺序存储结构,且元素按值有序
C.采⽤链式存储结构 D.采⽤链式存储结构,且元素按值有序
9、在⼀棵具有n个结点的完全⼆叉树中,分⽀结点的最⼤编号为( C )。A.?(n-1)/2? B.?n/2? C.?n/2? D.?n/2? -1
数据结构试题及答案
数据结构试题及答案
⼀、判断1.带表头节点的双向循环链表为空时,表头的前驱和后继指针指向HEAD。
2.带表头结点的双向链表为空时,表头的前趋和后继指针分别指向NULL。
3.带表头结点的双向循环链表为空时,表头的前驱和后继指针分别指向NULL
4.环形链表是线性结构,⾸尾相连,使⽤连续地址储存。
5.环形队列是线性结构,但它不是环形,利⽤特殊的循环算法解决“假溢出”。
6.环形队列是线性结构,象循环链表⼀样头尾相连接,它能解决“假溢出”。
7.环形队列是线性结构,能利⽤特殊的循环算法解决“假溢出”。
8.⼴义表E(a ,E)的表长是2,表深度是⽆穷⼤。
9.⼴义表E(a ,E)的表深度是2,表长是2。
10.⼴义表G(a ,G)的表深度是2,表长是2。
11.⼴义表G(a ,G)的深度是2,表长是2。
12.满BT是特殊的BT树,它的定义是递归的。
13.BT是特殊的树,它的定义是递归的。
14.平衡树是特殊的BT树,它的定义是递归的。
15..若已知BT的先根序和中根序、后根序和中根序,可唯⼀确定⼀个BT。
16.若已知BT的先根序遍历和后根序遍历,可唯⼀确定⼀个BT。
17.平衡BT是特殊的BT,它的定义是递归的。
18.BST是特殊的BT,它的中序遍历是有序的。
19.何时使⽤PRIM法,何时使⽤KRUSKAL法取决于图是稀疏还是稠密
20.PRIM和KRUSKAL均可以对图求MST,但是PRIM法⽅便。
21.希尔排序是插⼊排序的变型,插⼊排序是稳定的,但希尔排序是不稳定的。
22.希尔排序是插⼊排序的变型。插⼊排序是稳定的,所以希尔排序是稳定的。
23.快速排序的稳定性取决于枢轴的选择。
24.快速排序的枢轴有多种选择⽅法,取⾸尾节点是较简单的做法。
25.冒泡排序不但稳定,⽽且速度很快。
⼆、名词解释与问答26.线性结构:
唯⼀的⾸节点,唯⼀的尾节点,除⾸尾外其它节点既有前驱也有后继,⾸⽆前驱,尾⽆后继。27.线性结构中端操作受限的含义是什么?
