《数据结构》大题及答案
国开电大2023年春季期末考试《数据结构》试题(试卷代号1252)

国家开放大学2023年春季学期期末统一考试数据结构(本)试题一、单项选择题(把合适的选项编号填写在括号内。
每小题3分,共45分)1.线性结构、树形结构、图形结构都是按数据的( )来分类的。
A.存储结构B.物理和存储结构C.物理结构D.逻辑结构2.在数据结构中,从逻辑上可以把数据结构分为( ).A.动态结构和静态结构B.紧凑结构和非紧凑结构C.内部结构和外部结构D.线性结构和非线性结构3.设有一个长度为n的顺序表,要删除第i个元素,则需移动元素的个数为( )。
A. iB. n-i-1C. n-iD. n-i+14.设有一个长度为10的顺序表,要在第3个元素之后插入一个元素,则需移动元素的个数为( ).A.3B.6C. 7D.85.一个队列的人队序列是10,20 ,30,40。
则队列的输出序列是( ).A.40,30,20,10B.10,20,30,40C.10.40,30,20D.30 ,20,40,106.在一棵二叉树中(其根结点编号为1),若编号为8的结点存在右孩子,则该右孩子的顺序编号为( )。
A.18B.16C.15D.177.队列的出队操作在( )进行。
A.队头B.队尾C.任意位置D.指定位置8.串函数index(a ,b)的功能是进行( )。
A.求子串B.串连接C.模式匹配D.求串长9.一个非空广义表的表头元素( )。
A.不可能是原子B.只能是子表C.只能是原子D.可以是子表或原子10.链表所具备的特点之一是( )。
A.可以随机访问任一结点B.需要占用连续的存储空间.C.插人元素的操作不需要移动元索D.删除元素的操作需要移动元素11.树中所有结点数等于所有结点的度加( )。
A.1B.0C. 2D. -112.在一个无向图G中,所有边数之和等于的所有顶点的度数之和( )倍。
A.1/2B. 1C.2D.413.对于一个具有4个顶点和5条边的无向图,若采用邻接表表示,则所有顶点邻接表中的结点总数为( )。
《数据结构》期末考试复习题及参考答案

数据结构复习题(课程代码 252259)一、填空题(本大题共40小题)1.队列中是按照______先进先出______的原则进行数据元素的增删。
2.___栈__又称为LIFO表。
3.在顺序存储的完全二叉树中,若编号为i的结点有左孩子结点,则其右孩子结点的编号为___2i+1___。
4.存储地址与关键字之间存在某种映射关系的存储结构为_______散列存储结构_______。
5.在串S=“structure”中,以r为首字符的子串有_9_个。
6.设有整型二维数组M[4][3],每个元素(整数)占2个存储单元,元素按行的顺序存储,数组的起始地址为200,元素M[1][1]的地址是___208____。
7.在一个具有n个顶点的无向完全图中,包含有___ n(n-1)/2_____条边,在一个具有n个顶点的有向完全图中,包含有__ n(n-1)______条边。
8.假定一个线性表为(12,23,74,55,63,40),若按Key % 4条件进行划分,使得同一余数的元素成为一个子表,则得到的四个子表分别为_____(12,40)()(74)(23,55,63)____。
9.向一棵B_树插入元素的过程中,若最终引起树根结点的分裂,则新树比原树的高度____增加1______。
10.在堆排序的过程中,对任一分支结点进行筛运算的时间复杂度为__ O(log2n)______,整个堆排序过程的时间复杂度为__ O(nlog2n)______。
11.在快速排序、堆排序、归并排序中,____归并_____排序是稳定的。
12.一棵深度为5的满二叉树中的结点数为_______31_______个。
13.在含n个顶点和e条边的无向图的邻接矩阵中,非零元素的个数为__2e __。
14.从一棵二叉排序树中查找一个元素时,若元素的值大于根结点的值,则继续向____右子树____查找。
15._____拓朴排序______可以判断出一个有向图中是否有环。
数据结构试题集(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,42、有一棵非空的二叉树,(第0层为根结点),其第i层上最多有多少个结点?()(A)2i(B)21-i(C)21+i(D) i3、设电文中出现的字母为A,B,C,D,E,每个字母在电文中出现的次数分别为9,27,3,5,11,按huffman编码,则字母A编码为()(A)10(B)110(C)1110(D)11114、下面关于数据结构的叙述中,正确的叙述是()(A)顺序存储方式的优点是存储密度大,且插、删除运算效率高(B)链表中每个结点都恰好包含一个指针(C)包含n个结点的二叉排序树的最大检索长度为logn2(D)将一棵树转为二叉树后,根结点无右子树5、程序段:y:=0while n>=(y+1)*(y+1) doy:=y+1enddo的时间复杂度为()(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 n8、为了有效的利用散列查找技术,需要解决的问题是:( )Ⅰ:找一个好的散列函数Ⅱ:设计有效的解决冲突的方法Ⅲ:用整数表示关键码值(A) Ⅰ和Ⅲ (B) Ⅰ和Ⅱ (C) Ⅱ和Ⅲ (D) Ⅰ,Ⅱ和Ⅲ9、引入线索二叉树的目的是()(A) 加快查找结点的前驱或后继的速度(B) 为了能在二叉树中方便的进行插入与删除(C) :为了能方便的找到双亲(D) 使二叉树的遍历结果唯一10、用二分(折半)查找表的元素的速度比用顺序法()(A) 必然快(B) 必然慢(C): 相等(D): 不能确定三、简答题:(共40分)1、已知某二叉树按中序遍历序列为BFDAEGC,按前序遍历序列为ABDFCEG,试画出该二叉树形状,并写出它的后序遍历序列。
数据结构练习题及答案

数据结构练习题(一)一、单选题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.692 D.6965.树最适合用来表示( )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( )。
A.2k-1 +1 D. 2k-17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( )。
A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1的元素有()个。
A.1 B.2 C.3 D.49.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
二、填空题1.通常从四个方面评价算法的质量:_________、_________、_________和_________。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
3.假定一棵树的广义表表示为A(C,D(E,F,G),H(I,J)),则树中所含的结点数为__________个,树的深度为___________,树的度为_________。
大学计算机《数据结构》试卷及答案(八)

大学计算机《数据结构》试卷及答案一、选择题(30分)1.设一维数组中有n个数组元素,则读取第i个数组元素的平均时间复杂度为()。
(A) O(n) (B) O(nlog2n) (C) O(1) (D) O(n2)2.设一棵二叉树的深度为k,则该二叉树中最多有()个结点。
(A) 2k-1 (B) 2k(C) 2k-1(D) 2k-13.设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为()。
(A) n (B) e (C) 2n (D) 2e4.在二叉排序树中插入一个结点的时间复杂度为()。
(A) O(1) (B) O(n) (C) O(log2n) (D) O(n2)5.设某有向图的邻接表中有n个表头结点和m个表结点,则该图中有()条有向边。
(A) n (B) n-1 (C) m (D) m-16.设一组初始记录关键字序列为(345,253,674,924,627),则用基数排序需要进行()趟的分配和回收才能使得初始关键字序列变成有序序列。
(A) 3 (B) 4 (C) 5 (D) 87.设用链表作为栈的存储结构则退栈操作()。
(A) 必须判别栈是否为满(B) 必须判别栈是否为空(C) 判别栈元素的类型(D) 对栈不作任何判别8.下列四种排序中()的空间复杂度最大。
(A) 快速排序(B) 冒泡排序(C) 希尔排序(D) 堆9.设某二叉树中度数为0的结点数为N0,度数为1的结点数为N l,度数为2的结点数为N2,则下列等式成立的是()。
(A) N0=N1+1 (B) N0=N l+N2(C) N0=N2+1 (D) N0=2N1+l10.设有序顺序表中有n个数据元素,则利用二分查找法查找数据元素X的最多比较次数不超过()。
(A) log2n+1 (B) log2n-1 (C) log2n (D) log2(n+1)二、填空题(42分)1.设有n个无序的记录关键字,则直接插入排序的时间复杂度为________,快速排序的平均时间复杂度为_________。
《数据结构》四川大学_期终复习试题+答案

四川大学“精品课程”计算机科学与技术专业(本科)《数据结构与算法分析》课程考试说明与模拟试卷第一部分考试说明数据结构与算法分析》是计算机科学与技术专业统设的一门重要的必修专业基础课,它主要研究数据的各种逻辑结构和在计算机中的存储结构,还研究对数据进行的插入、查找、删除、排序、遍历等基本运算或操作以及这些运算在各种存储结构上具体实现的算法。
由于本课程的主教材采用C++语言描述算法,期末卷面考试也采用C++语言描述,因而要求在做平时作业和上机实验操作时用C++开发工具(如:Visual C++或C++ Builder或Borland C++)。
下面按照主教材中各章次序给出每章的具体复习要求,以便同学们更好地进行期末复习。
第一章绪论重点掌握的内容:1. 数据结构的二元组表示,对应的图形表示,序偶和边之间的对应关系。
2. 集合结构、线性结构、树结构和图结构的特点。
3. 抽象数据类型的定义和表示方法。
4. 一维和二维数组中元素的按下标和按地址的访问方式以及相互转换,元素地址和数组地址的计算,元素占用存储空间大小和数组占用存储空间大小的计算。
5. 普通函数重载和操作符函数重载的含义,定义格式和调用格式。
6. 函数定义中值参数和引用参数的说明格式及作用,函数被调用执行时对传送来的实际参数的影响。
7. 算法的时间复杂度和空间复杂度的概念,计算方法,数量级表示。
8. 一个简单算法的最好、最差和平均这三种情况的时间复杂度的计算。
对于本章的其余内容均作一般掌握。
第二章线性表重点掌握的内容:1. 线性表的定义及判别和抽象数据类型的描述,线性表中每一种操作的功能,对应的函数名、返回值类型和参数表中每个参数的作用。
2. 线性表的顺序存储结构的类型定义,即List类型的定义和每个域的定义及作用。
3. 线性表的每一种运算在顺序存储结构上实现的算法,及相应的时间复杂度。
4.链接存储的概念,线性表的单链接和双链接存储的结构,向单链表中一个结点之后插入新结点或从单链表中删除一个结点的后继结点的指针链接过程。
《数据结构》复习题题库
一、单项选择题(本大题共71小题,每小题2分,共142分)1、一个对象序列的排序码为{46,79,56,38,40,84},采用快速排序以位于最左位置的对象为基准而得到的第一次划分结果为()。
()A.{38,46,79,56,40,84}B.{38,79,56,46,40,84}C.{40,38,46,56,79,84}D.{38,46,56,79,40,84}标准答案:C2、广义表((a),a)的表头是()。
()A.aB.bC.(a)D.((a))标准答案:C3、数组A中,每个元素A的长度为3个字节,行下标i从1到8,列下标j从1到10,从首地址SA开始连续存放在存储器内,存放该数组至少需要的单元数是()。
()A.80B.100C.240D.270标准答案:C4、在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行()。
()A.HL=p;p->next=HL;B.p->next=HL;HL=p;C.p->next=HL;p=HL;D.p->next=HL->next;HL->next=p;标准答案:B5、一个具有n个顶点的无向完全图的边数为()。
()A.(n+1)/2B.n(n-1)/2C.n(n-1)D.n(n+1)标准答案:B6、如果待排序序列中两个数据元素具有相同的值,在排序后它们的位置发生颠倒,则称该排序是不稳定的。
下列选项中,()就是不稳定的排序方法。
()A.起泡排序B.归并排序C.直接插入法排序D.简单选择排序标准答案:D7、按照二叉树的定义,具有3个结点的二叉树有()种。
()A.3B.4C.5D.6标准答案:C8、设有1000个元素,用二分法查找时,最大比较次数是()。
()A.1B.7C.10D.25标准答案:C9、树适合用来表示()。
()A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据标准答案:C10、设有两个串p和q,求p在q中首次出现的位置的运算称作()。
数据结构试卷及其规范标准答案
《数据结构》试卷及答案1.算法分析的目的是( C )。
A.找出数据结构的合理性B.研究算法中输入和输出的关系C.分析算法的效率以求改进D.分析算法的易懂性和文档性2.( B )是具有相同特性数据元素的集合,是数据的子集。
A.数据符号B.数据对象C.数据D.数据结构3.用链表表示线性表的优点是( C )。
A.便于随机存取B.花费的存储空间比顺序表少C.便于插入与删除D.数据元素的物理顺序与逻辑顺序相同4.输入序列为(A,B,C,D)不可能的输出有(D )。
A.(A,B,C,D)B. (D,C,B,A)C. (A,C,D,B) D . (C,A,B,D)5.在数组表示的循环队列中,front、rear分别为队列的头、尾指针,maxSize为数组的最大长度,队满的条件是( B )。
A. front=maxSizeB. (rear+1)%maxSize=frontC. rear=maxSizeD. rear=front6.设有串t='I am a good student ',那么Substr(t,6,6)=( D )。
A. studentB. a good sC. goodD. a good 7.设有一个对称矩阵A,采用压缩存储方式,以行序为主序存储a11为第一个元素,其存储地址为1,每个元素占一个地址空间,则a85地址为( B )。
A.23B.33C.18D. 408.已知广义表LS=(A,(B,C,D),E)运用head和tail函数,取出LS中原子B的运算(C )。
A. Gethead(Gethead(LS))B. Gettail(Gethead(LS))C. Gethead(Gethead(Gettail(LS)))D. Gethead(Gettail(LS))9.若已知一棵二叉树先序序列为ABCDEFG,中序序列为CBDAEGF,则其后序序列为( A ) 。
A. CDBGFEAB. CDBFGEAC. CDBAGFED. BCDAGFE10.下列存储形式中,(C ) 不是树的存储形式。
数据结构考试题目及答案
数据结构试题6一、单项选择题(每小题3分,共30分)1.设栈的输入序列是1、2、3、4,则______不可能是其出栈序列。
( )[A] 1234 [B] 2134 [C] 1432 [D] 43122.在一个具有n个结点的线性链表中查找某个结点,若查找成功,需要平均比较_____个结点。
( )[A] n [B] n/2 [C] (n+1)/2 [D] (n-1)/23.设每个字符占一个字节,二维数组A中每个元素有6个字符组成,其行下标从0到9,列下标从0到3,元素_____当A按行优先存储起始地址与当A按列优先存储的起始地址相同。
( )[A] A[3][0] [B] A[3][1] [C] A[3][2] [D] A[2][3]4.具有2000个结点的非空二叉树的最小深度为_______。
( )[A] 9 [B] 10 [C] 11 [D] 125.已知某二叉树的后根序列是dabec,中根序列是debac,则先根序列是_____。
( )[A] acbed [B] decab [C] deabc [D] cedba6. 无向图中所有边的数目等于所有顶点的度数之和的_____倍。
( )[A] 1 [B] 2 [C] 1/2 [D] 不一定7.递归函数F(n)=F(n-1)+n+1(n>1)的递归体是_______。
( )[A] F(0)=0 [B] F(1)=1 [C] F(n)=n+1 [D] F(n)=F(n-1)+n+18. 若需要在O(nlog2n)的时间内完成对n个元素的排序,且要求排序是稳定的,则可选择的排序方法是_______。
( )[A] 快速排序[B] 堆排序[C] 归并排序[D] 直接插入排序9.在对n个元素的序列进行排序时,堆排序所需要的附加存储空间是__。
( )[A] O(1) [B] O(log2n) [C] O(n) [D] O(n log2n)10.假定有K个关键字互为同义词,若用线性探查法把这K个关键字存入散列表中,则总的探查次数至少为______。
《数据结构》填空作业题(答案)
《数据结构》填空作业题答案第1章绪论(已校对无误)1.数据结构包括数据的逻辑结构、数据的存储结构和数据的运算三方面的内容。
2.程序包括两个内容:数据结构和算法。
3. 数据结构的形式定义为:数据结构是一个二元组:Data Structure =(D,S)。
4. 数据的逻辑结构在计算机存储器内的表示,称为数据的存储结构。
5. 数据的逻辑结构可以分类为线性结构和非线性结构两大类。
6. 在图状结构中,每个结点的前驱结点数和后继结点数可以有多个。
7. 在树形结构中,数据元素之间存在一对多的关系。
8. 数据的物理结构,指数据元素在计算机中的标识(映象),也即存储结构。
9. 数据的逻辑结构包括线性结构、树形结构和图形结构3种类型,树型结构和有向图结构合称为非线性结构。
10. 顺序存储结构是把逻辑上相邻的结点存储在物理上连续的存储单元里,结点之间的逻辑关系由存储单元位置的邻接关系来体现。
11. 链式存储结构是把逻辑上相邻的结点存储在物理上任意的存储单元里,节点之间的逻辑关系由附加的指针域来体现。
12. 数据的存储结构可用4种基本的存储方法表示,它们分别是顺序存储、链式存储、索引存储和散列存储。
13. 线性结构反映结点间的逻辑关系是一对一的,非线性结构反映结点间的逻辑关系是一对多或多对多。
14. 数据结构在物理上可分为顺序存储结构和链式存储结构。
15. 我们把每种数据结构均视为抽象类型,它不但定义了数据的表示方式,还给出了处理数据的实现方法。
16. 数据元素可由若干个数据项组成。
17. 算法分析的两个主要方面是时间复杂度和空间复杂度。
18. 一个算法的时间复杂度是用该算法所消耗的时间的多少来度量的,一个算法的空间复杂度是用该算法在运行过程中所占用的存储空间的大小来度量的。
19. 算法具有如下特点:有穷性、确定性、可行性、输入、输出。
20. 对于某一类特定的问题,算法给出了解决问题的一系列操作,每一操作都有它的确切的定义,并在有穷时间内计算出结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构》大题及答案
一、应用题
1.已知某字符串S中共有8种字符,各种字符分别出现2次、1次、4次、5次、7次、3次、4次和9次,对该字符串用[0,1]进行前缀编码,问该字符串的编码至少有多少位。
解:以各字符出现的次数作为叶子结点的权值构造的哈夫曼编码树如图所示。
其带权路径长度=2×5+1×5+3×4+5×3+9×2+4×3+4×3+7×2=98,所以,该字符串的编码长度至少为98位。
2.已知关键码序列为(Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec),散列表的地址空间为0~16,设散列函数为H(x)=[ i/2 」(取下整数) ,其中i为关键码中第一个字母在字母表中的序号,采用链地址法处理冲突构造散列表,并求等概率情况下查找成功的平均查找长度。
解:H(Jan)=10/2=5, H(Feb)=6/2=3, H(Mar)=13/2=6, H(Apr)=1/2=0
H(May)=13/2=6, H(Jun)=10/25, H(Jul)=10/25, H(Aug)=1/2=0
H(Sep)=19/2=8, H(Oct) =15/2=7, H(Nov) =14/2=7, H(Dec) =4/2=2
采用链地址法处理冲突,得到的开散列表如下:
平均查找长度=(1×7+2×4+3×1)/12=18/12
3.分析下面各程序段的时间复杂度
(1) s1(int n)
{ int p=1,s=0;
for (i=1;i<=n;i++)
{ p*=i;s+=p; }
return(s);
} ——O(n)
(2) s2(int n)
x=0;y=0;
For (k=1;k<=n;k++) x++;
For (i=1;i<=n;i++)
For (j=1;j<=n;j++)
y++; ——O(n2)
4.下述算法的功能是什么?
(1)(1)返回结点*p的直接前趋结点地址。
(2)交换结点*p和结点*q(p和q的值不变)。
5.对给定的一组权值W=(5,2,9,11,8,3,7),试构造相应的哈夫曼树,并计算它的带权路径长度。
解:构造的哈夫曼树如图所示。
WPL=2×4+3×4+5×3+7×3+8×3+9×2+11×2=120
6.已知散列函数H(k)=k mod 12,键值序列为(25, 37, 52, 43, 84, 99, 120, 15, 26, 11,
70, 82),采用链表法处理冲突,试构造散列表。
解:H(25)=1, H(37)=1, H(52)=4, H(43)=7, H(84)=0, H(99)=3, H(120)=0, H(15)=3, H(26)=2, H(11)=11, H(70)=10, H(82)=10 构造的开散列表如下:
7.分析下面各程序段的时间复杂度
(1) for (i=0;i<n;i++)
for (j=0;j<m;j++)
A[i][j]
——O(n*m)
(2)s=0;
for (i=0;i<n;i++)
for (j=0;j<n;j++)
s+=B[i][j];
sum=s;
——O(n2)
(3) A=B; B=C; C=A;
——O(1)。