2010数据结构期末试卷A答案
期末数据结构试题及答案
期末数据结构试题及答案期末数据结构试题(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.2340B.2336C.2220D.21604.如果以链表作为栈的存储结构,则退栈操作时( D )A.必须判别栈是否满⼲B.对栈不作任何判别C.判别栈元素的类型D.必须判别栈是否空5.设数组Data[0..m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执⾏出队操作的语句为( A )A.front=(front+1)%(m+1)B.front=(front+1)% mC.rear=(rear+1)% mD. front=front+16.深度为6(根的层次为1)的⼆叉树⾄多有( B )结点A.64B.63C.31D.327.将含100个结点的完全⼆叉树从根这⼀层开始,每层从左⾄右依次对结点编号,根结点的编号为1。
编号为47的结点X的双亲的编号为( C )A.24B.25C.23D.2⽆法确定8.设有⼀个⽆向图G=(V,E)和G'=(V',E'),如果G'为G的⽣成树,则下⾯不正确的说法是( D)A.G'为G的⼦图B.G'为G的⼀个⽆环⼦图C.G'为G的极⼩连通⼦图且V'=VD.G'为G的连通分量9.⽤线性探测法查找闭散列上,可能要探测多个散列地址,这些位置上的键值( D )A.⼀定都是同义词B.⼀定都不是同义词C.都相同D.不⼀定都是同义词10.⼆分查找要求被查找的表是( C )A.键值有序的链接表B.链接表但键值不⼀定有序表C.键值有序的顺序表D.顺序表但键值不⼀定有序表11.当初始序列已经按键值有序,⽤直接插⼊法对其进⾏排序,需要⽐较的次数为( B )A. n2B. n-1C. log2nD. nlog2n12.堆是⼀个键值序列{K1,K2,...,Ki,...,Kn},对i=1,2,...,└ n/2 ┘,满⾜( A)A. Ki<=K2i且Ki<=K2i+1(2i+1<=n)B.KiC. Ki<=K2i或Ki<=K2i+1(2i+1<=n)D.Ki<=K2i<=K2i+1⼆、判断题(正确的在括号内打"V",错的在括号内打"X",每⼩题1分,共10分)1.双链表中⾄多只有⼀个结点的后继指针为空( V )2.在循环队列中,front指向队列中第⼀个元素的前⼀位置,rear指向实际的队尾元素,队列为满的条件是front=rear( X)rear=front->next;3.对线性表进⾏插⼊和删除操作时,不必移动结点。
数据结构期末考试及答案
一、单选题1、逻辑上通常可以将数据结构分为( )A.初等结构和组合结构B.顺序结构和链式结构C.线性结构和非线性结构D.动态结构和静态结构正确答案:C2、如果在数据结构中每个数据元素只可能有一个直接前驱,但可以有多个直接后继,则该结构是()。
A.栈B. 队列C.图D.树正确答案:D3、在长度为n的顺序表的第i个位置上插入一个元素(1<=i<=n+1),元素的移动次数为:()A.n-iB.i-1C.n-i+1D.i正确答案:C4、在非空线性链表中由p所指结点的后面插入一个由q所指的结点,应依次执行()A.q->next=p;p->next=q;B.p->next=q;q->next=p;C.q->next=p->next;p->next=q;D.q->next=p->next;p=q;正确答案:C5、已知栈的最大容量为4。
若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为()A.2,3,5,6,1,4B.1,4,6,5,2,3C.5,4,3,2,1,6D.3,2,5,4,1,6正确答案:D6、设栈S和队列Q初始均为空,若6个元素入栈的顺序为1、2、3、4、5、6,一个元素出栈以后立即入队列Q,若6个元素出队的顺序为2、4、3、6、5、1,则栈S的容量至少为()A.3B.5C.4D.2正确答案:A7、在计算机内实现递归算法时所需的辅助数据结构是()A.队列B.栈C.图D.树正确答案:B8、循环队列存储在数组A[0..m-1],则出队时的操作为()A.front=(front mod m)+1B.ront=(front+1)mod mC.front=front+1D.front=(front+1)mod (m-1)正确答案:B9、若以S和X分别表示进栈和退栈操作,则对初始状态为空的栈可以进行的栈操作系列合法的是()A.SXXSXSSXB.SSSXXSXXC.SXSSXXXXD.SXSXXSSX正确答案:B10、在具有m个单元的循环队列中,队头指针为front,队尾指针为rear,则队满的条件是()A.(front+1)%m==rearB.(rear+1)%m==frontC.front==rearD.rear+1==front正确答案:B11、在表长为n的顺序表上做插入运算,平均要移动的结点数为()A.n/4B.nC.n/3D.n/2正确答案:D12、元素的进栈次序为A,B,C,D,E,则退栈中不可能的序列是()A.E,D,C,B,AB.A,B,C,D,EC.E,A,B,C,DD.B,C,D,E,A正确答案:C13、下述二叉树中,()满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序。
2010年山东省C++答案 数据结构试卷及答案考资料
(2)A.空间复杂度和时间复杂度 B.正确性和简明性
C.可读性和文档性 D.数据复杂性和程序复杂性
46、长度为n的顺序表,删除位置i上的元素(0≤i≤n一1),需要移动的元素个数为
A.n—i B.n—i—l C.i D.i+1
16、数据结构在计算机内存中的表示是指 A 。
A.数据的存储结构 B.数据结构 C.数据的逻辑结构 D.数据元素之间的关系
17、数据结构在计算机内存中的表示是指 A 。
A.数据的存储结构 B.数据结构 C.数据的逻辑结构 D.数据元素之间的关系
?A.动态结构和静态结构?B.紧凑结构和非紧凑结构?C.线性结构和非线性结构?D.内部结构和外部结构
22、栈采用不同的存储方式时,下列关于出栈过程的叙述中,正确的是
A.顺序栈需要判定栈空,链栈也需要判定
B.顺序栈需要判定栈空,而链栈不需要判定
C.顺序栈不需要判定栈空,而链栈需要判定
C.指针型 D.常值引用型?
31、在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行 B 操作与链表的长度有关。
A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
C.在单链表第一个元素前插入一个新元素
D.在单链表最后一个元素后插入一个新元素
32、深度为k的完全二叉树至多有( )个结点
C)DEBFGCA D)GFCEBDA
28、长度为n的顺序表,删除位置i上的元素(0≤i≤n一1),需要移动的元素个数为
A.n—i B.n—i—l C.i D.i+1
29、下列选项中,符合堆定义的是
《数据结构》期末考试试卷试题及答案
《数据结构》期末考试试卷试题及答案第一部分:选择题(每题2分,共20分)1. 下面哪个数据结构是线性结构?A. 树B. 图C. 队列D. 网络流2. 下面哪个数据结构用于实现广度优先搜索算法?A. 栈B. 队列C. 散列表D. 堆3. 下面哪个数据结构用于实现深度优先搜索算法?A. 栈B. 队列C. 散列表D. 堆4. 下面哪个数据结构用于实现快速排序算法?A. 栈B. 队列C. 散列表D. 堆5. 下面哪个数据结构用于实现优先队列?A. 栈B. 队列C. 散列表D. 堆6. 下面哪个数据结构用于实现哈希表?A. 栈B. 队列C. 散列表D. 堆7. 下面哪个数据结构用于实现最小树算法?A. 栈B. 队列C. 散列表D. 堆8. 下面哪个数据结构用于实现拓扑排序算法?A. 栈B. 队列C. 散列表D. 堆9. 下面哪个数据结构用于实现最短路径算法?A. 栈B. 队列C. 散列表D. 堆10. 下面哪个数据结构用于实现并查集算法?A. 栈B. 队列C. 散列表D. 堆第二部分:填空题(每题2分,共20分)1. 链表是一种______数据结构。
2. 二叉树的节点最多有______个子节点。
3. 堆是一种特殊的______。
4. 散列表的查找效率取决于______。
5. 图的遍历算法包括______和______。
6. 快速排序算法的平均时间复杂度为______。
7. 哈希表中的冲突解决方法有______和______。
8. 最小树算法包括______和______。
9. 最短路径算法包括______和______。
10. 并查集算法用于解决______问题。
第三部分:简答题(每题10分,共50分)1. 请简述栈和队列的区别。
2. 请简述二叉搜索树的特点。
3. 请简述哈希表的原理。
4. 请简述图的深度优先搜索算法。
5. 请简述最小树算法的原理。
第四部分:编程题(每题20分,共50分)1. 编写一个函数,实现链表的插入操作。
2010《数据结构》期末试卷_A卷及答案
一、(本题10分)(1)简述线性表的两种存储结构的主要优缺点及各自适用的场合。
(2)在折半查找和表插入排序中,记录分别应使用哪种存储结构,并用一句话简述理由。
答:(1)顺序存储是按索引(如数组下标)来存取数据元素,优点是可以实现快速的随机存取,缺点是插入与删除操作将引起元素移动,降低效率。
对于链式存储,元素存储采取动态分配,利用率高。
缺点是须增设指针域,存储数据元素不如顺序存储方便。
优点是插入与删除操作简单,只须修改指针域。
(2)在折半查找中,记录使用顺序存储,可以快速实现中点的定位;在表插入排序中,记录使用静态链表,可以降少移动记录的操作。
二、(本题10分)一棵二叉树的先序、中序和后序序列分别如下,部分未显示,请画出该二叉树。
先序序列: _ 2 3_5_7 8;中序序列: 3_4 1_7 8 6;后序序列:_ 4 2 _ _ 6 5 1。
答:三、(本题10分)假定用于通讯的电文仅由a 、b 、c 、d 、e 、f 、g 等8个字母组成,字母在电文中出现的频率分别为:0.07、0.19、0.02、0.06、0.32、0.03、0.21和0.10。
试为这些字母设计哈夫曼编码。
答:一种编码如下:a: 0010 b: 10 c:00000 d:0001 e:01 f:00001 g:11 h:0011四、(本题15分)给定下面的带权无向图G :1)从顶点0开始,请写出深度优先遍历序列和广度优先遍历序列,当有多种选择时,编号小的结点优先。
2)从顶点0开始,使用普里姆算法求出该图的最小生成树,需画出最小生成树的构造过程。
3)有人给出求解最小生成树的另外一种算法:将连通图中的边按其权值从大到小顺序逐个删123 45768厦门大学《_数据结构_》课程期末试卷信息科学与技术学院计算机科学系2008年级___专业主考教师:陈怡疆 庄朝晖 试卷类型:(A 卷)除直至不可再删,删除要遵循的原则是:保证在删除该边后各个顶点之间应该是连通的。
2010年辽宁省数据结构试题集(10套题并附带答案)考试重点和考试技巧
42、若进栈序列为1,2,3,4,则不可能得到的出栈序列是( C )。
A)3,2,1,4 B)3,2,4,1
C)4,2,3,1 D)2,3,4,1
43、数据结构在计算机内存中的表示是指 A 。
A.数据的存储结构 B.数据结构 C.数据的逻辑结构 D.数据元素之间的关系
C.s->next = p;s->prior = p->prior;p->prior = s;p->prior->next = s
D.s->next = p;s->prior = p->prior;p->prior->next = s;p->prior = s
17、数据结构中,从逻辑上可以把数据结构分成(?)。
A.单链表 B.双链表 C.单循环链表 D. 顺序表
38、算法分析的目的是 C ,算法分析的两个主要方面是 A 。
(1)A.找出数据结构的合理性 B.研究算法中的输入和输出的关系
C.分析算法的效率以求改进 C.分析算法的易读性和文档性
(2)A.空间复杂度和时间复杂度 B.正确性和简明性
28、广义表A=(x,((y),((a)),A))的深度是
A.2 B.3 C.4 D.∞
29、若进栈序列为1,2,3,4,则不可能得到的出栈序列是( C )。
A)3,2,1,4 B)3,2,4,1
C)4,2,3,1 D)2,3,4,1
44、若一个栈以数组V[0..n-1]存储,初始栈顶指针top为n,则x入栈的正确操作是
A.top=top+1;V[top]=x B.V[top]=x;top=top+1
C.top=top一1;V[mp]=x D.V[top]=x;top=top—l
《数据结构》期末考试试卷试题及答案
《数据结构》期末考试试卷试题及答案一、选择题(每题5分,共20分)1. 下列哪个不是线性结构?A. 栈B. 队列C. 图D. 数组2. 下列哪个不是栈的基本操作?A. 入栈B. 出栈C. 查找D. 判断栈空3. 下列哪个不是队列的基本操作?A. 入队B. 出队C. 查找D. 判断队列空4. 下列哪个不是图的基本概念?A. 顶点B. 边C. 路径D. 环二、填空题(每题5分,共20分)5. 栈是一种______结构的线性表,队列是一种______结构的线性表。
6. 图的顶点集记为V(G),边集记为E(G),则无向图G=(V(G),E(G)),有向图G=(______,______)。
7. 树的根结点的度为______,度为0的结点称为______。
8. 在二叉树中,一个结点的左子结点是指______的结点,右子结点是指______的结点。
三、简答题(每题10分,共30分)9. 简述线性表、栈、队列、图、树、二叉树的基本概念。
10. 简述二叉树的遍历方法。
11. 简述图的存储结构及其特点。
四、算法题(每题15分,共30分)12. 编写一个算法,实现栈的入栈操作。
13. 编写一个算法,实现队列的出队操作。
五、综合题(每题20分,共40分)14. 已知一个无向图G=(V,E),其中V={1,2,3,4,5},E={<1,2>,<1,3>,<2,4>,<3,4>,<4,5>},画出图G,并给出图G的邻接矩阵。
15. 已知一个二叉树,其前序遍历序列为ABDCE,中序遍历序列为DBACE,请画出该二叉树,并给出其后序遍历序列。
答案部分一、选择题答案1. C2. C3. C4. D二、填空题答案5. 后进先出先进先出6. V(G),E(G)7. 0 叶结点8. 左孩子右孩子三、简答题答案9. (1)线性表:一个线性结构,其特点是数据元素之间存在一对一的线性关系。
2010吉林省数据结构试题及答案
19、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a??11为第一个元素,其存储地址为1,每元素占1个地址空间,则a85的地址为( B )。
A)13 B)33 C)18 D)40
A) 存储密度大 B) 插入运算方便
C)删除运算方便 D)可方便地用于各种逻辑结构的存储表示
36、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以
C)部分地址必须是连续 D)必须是不连续的
9、下列序列中,执行第一趟快速排序后得到的序列是( A )。
A)[d,a,e,d,b]f[h,g] B) [c,e,a,d]f[h,g,b]
C) [g,a,e,c,b]f[d,h] D) [a,b,c,d,]f[e,g,h]
10、设有一个栈,元素的进栈次序为A, B, C, D, E,下列是不可能的出栈序列是( C )。
A)必须是连续的 B)连续不连续都可以
C)部分地址必须是连续 D)必须是不连续的
31、设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为( A )。
A)p->next=p->next->next; B) p=p->next;
A) 5,4,3,2,1,6 B) 2,3,5,6,1,4
C) 3,2,5,4,1,6 D) 1,4,6,5,2,3
18、设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为( A )。
A)p->next=p->next->next; B) p=p->next;
(完整word版)《数据结构》 期末试卷(A)
班 姓 学 考试时 考场(教室装 线《数据结构》期末考试试卷(A)一、判断题:(正确者在括号内打“√”,错误者打“×”。
每小题1分,共10分)1.线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。
( ) 2.栈和队列是一种非线性数据结构。
( ) 3.十字链表是无向图的一种存储结构。
( ) 4.Hash 表的平均查找长度与处理冲突的方法无关。
( ) 5.数据元素是数据的最小单位。
( ) 6.就平均查找长度而言,分块查找最小,折半查找次之,顺序查找最大。
( ) 7. 对于一棵非空二叉树,它的根结点作为第一层,则它的第i 层上最多能有2i-1个结点。
( ) 8.有e 条边的无向图,在邻接表中有e 个结点。
( ) 9.顺序存储方式的优点是存储密度大,且插入、删除运算效率高。
( ) 中插入一个新结点,总是插入到叶结点下面。
( ) 二、选择题:(将每小题正确答案的选项填写在题后的横线上,每小题2分,共20分) x 的赋值语句的频度为___________。
FOR i:=1 TO n DOFOR j:=1 TO n DOx:=x+1;A . O(2n)B .O(n)C .O(n 2) D .O(log2n) 2.下面关于串的的叙述中,哪一个是不正确的?___________。
A .串是字符的有限序列B .空串是由空格构成的串C .模式匹配是串的一种重要运算D .串既可以采用顺序存储,也可以采用链式存储 3.栈和队列的共同特点是___________。
A .只允许在端点处插入和删除元素B .都是先进后出C .都是先进先出D .没有共同点4.一个向量第一个元素的存储地址是50,每个元素的长度为4,则第5个元素的地址是___________。
A. 70 B. 66 C. 50 D. 785.设abcdef 以所给的次序进栈,若在进栈操作时,允许退栈操作,则下面得不到的序列为?___________。
数据结构真题及答案(2010)
杭州电子科技大学2010《数据结构》真题及解析一、是非题(每小题2分,共20分)1.线性表的顺序存储结构优于链式存储结构。
2.栈和队列也是线性表。
如果需要,可对它们中的任一元素进行操作。
3.非空广义表的表头和表尾都有可能是原子或广义表。
4.在二叉树的先序遍历序列中,任意-个结点均处在其孩子结点的前面。
5.通常,在二叉树的第i层上有2^i-1个结点。
6.二叉树按某种次序线索化后,任一结点均有指向其前驱和后继的线索指针。
6.赫夫曼树中的结点个数一定是奇数。
8.用邻接矩阵(数组表示法)存储一个图时,所需的存储空间大小与图的边数无关。
9.对于一棵m阶的B-树而言.树中每个结点至多有m个关键字,除根之外的所有非终端结点至少有┌m/2┐个关键字。
10.对于任何待排序序列来说,快速排序均快于冒泡排序。
二、选择题(每小题2分,共20分)1.递归过程可借助于_____转化为非递归过程。
A:线性表 B:队列 C:栈 D:数组2.循环队列用数组A[0..m-1]存放其元素值,设头尾游标分别为front(队头元素的位置)和rear(队尾元素的位置),则当前队列中的元素个数是_______。
A: rear-front B: rear-front+1C: (rear-front+m)%m D: (rear-front+1+m)%m3.对广义表A=((a, (6)),(c,()),d)执行操作gettail(gethead(gettail (A)))的结果是:________。
A:() B:(()) C:d D:(d)4.对二叉排序树______可得到有序序列。
A:按层遍历 B:前序遍历C:中序遍历 D:后序遍历5.在有n个结点的二叉树的二叉链表表示中,空指针数为________。
A:不定 B: n+1 C:n D:n-16.图示的三棵二叉树中_____为最优二叉树。
A: B: C:7.设无向图G=(V,E)和G=(V′,E′),若G′是G的生成树,则下面不正确的说法是_________。
德州学院数据结构A试题
德州学院数学系期末考试试题(A卷)( 2010 至 2011 学年第 1 学期)课程名称:数据结构考试对象:07级本试卷类型:闭卷考试时间: 120分钟一、选择题(每小题2分,共20分)1.算法的计算量的大小称为计算的()。
A.效率 B. 复杂性 C. 现实性 D. 难度2.以下哪一个不是算法的特性()。
.有穷性 B.确定性 C.简洁性 D.可行性3.数据结构的定义为(D,S),其中D是( )的集合。
A 算法 B数据元素 C 数据操作 D 逻辑结构4.在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行( )。
A s->next=p;p->next=s;B s->next=p->next;p->next=s;C s->next=p->next;p=s;D p->next=s;s->next=p;5.栈的数组表示中,top为栈顶指针(指向栈顶元素),栈空的条件是( )。
A top=0B top=maxSizeC top=maxSizeD top=-16.栈和队列的共同点是()。
A.都是先进先出 B.都是先进后出C.只允许在端点处插入和删除元素 D.没有共同点7.具有15个结点的完全二叉树的深度为( )。
A 2B 3C 4D 58.已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为()。
A.CBEFDA B. FEDCBA C. CBEDFA D.不定9.采用折半查找方法查找长度为n的有序表时,元素的平均查找长度为()。
A O(n2)B O(nlog2n) C O(log2n) D O(n).对二叉排序树进行()遍历,可以得到关键字的有序序列。
A.前序 B.中序 C.后序 D.层次二、填空题(每空2分,共20分)1.根据数据元素之间的关系不同,通常有以下四种结构,、、和图形结构。
2.将一棵树转化为二叉树时,此二叉树的根节点的右子树为。
《数据结构》期末考试试题及答案
《数据结构》期末考试试题及答案一、选择题(每题2分,共20分)1. 下列哪种数据结构是线性结构?A. 栈B. 树C. 队列D. 图答案:A2. 在计算机科学中,什么是最基本的数据结构?A. 数组B. 链表C. 栈D. 树答案:C3. 下列哪种操作的时间复杂度是O(1)?A. 在链表中插入元素B. 在数组中查找元素C. 在树中删除节点D. 在图中寻找最短路径答案:B4. 下列哪种数据结构常常用于实现栈和队列?A. 数组B. 链表C. 树D. 图答案:A5. 下列哪种数据结构是有序的?A. 栈B. 队列C. 链表D. 图答案:C二、填空题(每题2分,共20分)1. 在数据结构中,栈是一种后进先出(____)的数据结构。
答案:线性表2. 队列是一种先进先出(____)的数据结构。
答案:线性表3. 链表是一种____数据结构,由一系列节点组成。
答案:非线性4. 二叉树是一种特殊的树,它的每个节点最多有两个____。
答案:子节点5. 哈希表是通过____函数将关键字映射到表中的位置来访问数据。
答案:哈希三、判断题(每题2分,共20分)1. 树是一种线性结构。
()答案:错误2. 链表的插入和删除操作时间复杂度都是O(1)。
()答案:错误3. 图是一种线性结构。
()答案:错误4. 哈希表是一种基于顺序结构的的数据结构。
()答案:错误5. 在数据结构中,时间复杂度O(n)表示算法随着输入规模的增加而线性增长。
()答案:正确四、简答题(每题10分,共30分)1. 请简述栈和队列的特点和应用场景。
答案:栈是一种后进先出(LIFO)的数据结构,应用场景包括函数调用栈、表达式求值等。
队列是一种先进先出(FIFO)的数据结构,应用场景包括任务队列、缓冲区等。
2. 请简述链表的优缺点。
答案:链表的优点包括动态扩容、插入和删除操作时间复杂度为O(1)、可以方便地实现各种复杂数据结构。
缺点包括占用内存空间较大、不如数组支持随机访问。
《数据结构》期末考试试题及答案
《数据结构》期末考试试题及答案一、选择题(每题2分,共20分)1. 下列哪一个不是线性结构的基本特征?A. 有且只有一个根结点B. 每个结点最多有一个前驱和一个后继C. 有且只有一个叶子结点D. 有序对中第一个元素是根结点答案:C2. 在单链表中,存储元素的数据域称为元素的哪个部分?A. 指针域B. 数据域C. 结点域D. 头结点答案:B3. 在顺序存储结构中,数据元素之间的逻辑关系由哪个因素决定?A. 数据元素的存储顺序B. 数据元素的存储位置C. 数据元素的类型D. 数据元素的大小答案:A4. 下列哪种排序算法的时间复杂度不是O(nlogn)?A. 快速排序B. 归并排序C. 堆排序D. 冒泡排序答案:D5. 在二叉树中,具有度为2的结点的个数是n0,度为0的结点个数是n2,则有()。
A. n0 = n2 - 1B. n0 = n2 + 1C. n0 = n2D. n0 = n2 + 2答案:B6. 在线索二叉树中,哪个结点被称为线索结点?A. 有左子树的结点B. 有右子树的结点C. 既没有左子树也没有右子树的结点D. 具有左右子树的结点答案:C7. 在双向链表中,查找结点的时间复杂度是()。
A. O(1)B. O(n)C. O(nlogn)D. O(n^2)答案:B8. 在栈的操作中,下列哪个操作是非法的?A. 先进先出B. 后进先出C. 可以插入任意元素D. 可以删除任意元素答案:D9. 在顺序表中进行插入操作时,平均移动次数为()。
A. 0B. n/2C. nD. n-1答案:C10. 在下列排序算法中,哪个算法是不稳定的?A. 冒泡排序B. 快速排序C. 插入排序D. 归并排序答案:B二、填空题(每题2分,共20分)1. 线性表的顺序存储结构称为顺序表,其基本特点是()。
答案:元素顺序存储2. 在单链表中,每个结点包括两个域:数据域和()。
答案:指针域3. 在二叉树中,度为0的结点称为(),度为2的结点称为()。
《数据结构与算法》2010(A)答案解析.
广西工学院 2010 — 2011 学年第 1 学期考试试题考核课程 数据结构与算法 ( A 卷)考核班级 计y091~096 学生数 215 印数 230 考核方式 闭卷 考核时间 120 分钟【说明】试题满分共100分;考试时间为2个小时;一、选择题(每小题2分,共30分)1、设一序列为:1,2,3,4,5,6。
通过栈操作不可能产生的序列为 B 。
A 、3,2,5,6,4,1 B 、1,5,4,6,2,3 C 、2,4,3,5,1,6 D 、4,5,3,6,2,1这题考栈的性质:后进先出。
进栈的序号是1最先6最后,但不规定要同时进,然后再出栈。
可以1进去,1出来,然后2进去,2出来,也可以1进去,2进去,2出来,1出来。
按照这个原则,先看:A )是可能的,进出栈情况如下:1,2,3依次进栈,3出栈2出栈;4,5进栈,5出栈;6进栈,6出栈;4再出栈,最后是1出栈。
B )不可能:原因:1进栈1出栈;2,3,4,5进栈,5出栈4出栈;6再进栈,6出栈,此时3在栈顶,2不可能比3还要先出栈。
其他的答案依此可以得出。
2、设有向图G=(V ,E ),V={1,2,3,4,5,6};E={<1,2>,<2,1>,<6,3>,<2,3>,<5,6>,<2,4>,<3,5>}。
则其强连通分量个数为 A 。
A 、3 B 、4 C 、5 D 、6考有向图中的强联通分量问题:首先要把强联通分量概念弄清楚:有向图强连通分量在有向图G 中,如果两个顶点vi,vj 间(vi<>vj )有一条从vi 到vj 的有向路径,同时还有一条从vj 到vi 的有向路径,则称两个顶点强连通(strongly connected)。
如果有向图G 的每两个顶点都强连通,称G 是一个强连通图。
非强连通图有向图的极大强连通子图,称为强连通分量(strongly connected components)。
10级数据结构期末试卷_A答案
数据结构与算法A 卷答案一、选择题(本题共20小题,每题2分,共40分)二、分析运算题(本题共6小题,每题6分,共36分)(1) 如果输入序列为6 5 4 3 2 1,试问能否通过栈结构得到以下两个序列3 4 6 5 2 1和2 3 4 1 5 6;请说明为什么不能或如何才能得到 输出序列2 3 4 1 5 6可以得到(2分) 输出序列3 4 6 5 2 1不能得到(2分),其理由是,输出序列中间两元素是6 5,前面2个元素(3 4)得到后,栈中元素剩6 5,且5在栈顶,不可能栈底元素6在栈顶元素5之前出栈(2分)。
(2) 请写出图中二叉树的前序(先序)和中序遍历序列。
①前序(先序):ABDCEF (3分) ②中序:DBAECF (3分)(3) 算术表达式如下:a*(b+c)-d ① 用二叉树表示算术表达式 ② 写出后序(后缀)表达式(3分)②后序(后缀)表达式:abc+*d-(3分)(4) 请写出无向图中顶点a-f 的度 a:3(1分) b:2(1分) c:1(1分) d:2(1分) e:4(1分) f:2(1分)(5) 给定元素序列:(50,25,80,20,76,93),画出按照该序列构造的二叉排序树(必须画出二叉排序树的建树过程)。
每个结点1分(6) 下面的邻接表表示一个给定的无向图 ① 请根据邻接表画出无向图② 给出从顶点v1开始, 根据邻接表对图用深度优先搜索法进行遍历时的顶点序列;③ 给出从顶点v1开始, 根据邻接表对图用广度优先搜索法进行遍历时的顶点序列。
(2分)②深度序列:V1 V2 V5 V3 V4 V6 (2分) ③广度序列:V1 V2 V3 V4 V5 V6 (2分)50 2580769320三、程序填空题(本题共5空,每空2分,共10分)①p->next(2分)②malloc(2分)③data(2分)④s->next = p->next(2分)⑤p->next = s(2分)四、算法设计题(本题共1小题,每题14分,共14分)1. 如果通讯字符a,b,c,d出现频度分别为7,5,2,4①某同学设计了如下程序,请根据程序画出对应的二叉树,计算所画出的二叉树的带权路径长度(必须写出计算过程,否则不给分);②请画出赫夫曼(哈弗曼)树(必须画出赫夫曼树的建树过程);③计算它的带权路径长度(必须写出计算过程,否则不给分)④根据赫夫曼树,用if-else语句修改①中的程序,写出最佳判定算法。
《数据结构》期末考试试卷(含答案)
《数据结构》期末考试试卷( A )一、选择题(每小题2分,共24分)1.计算机识别、存储和加工处理的对象被统称为( A )A.数据B.数据元素C.数据结构D.数据类型2.栈和队列都是(A)A.限制存取位置的线性结构B.顺序存储的线性结构C.链式存储的线性结构D.限制存取位置的非线性结构3.链栈与顺序栈相比,比较明显的优点是( D )A.插入操作更加方便B.删除操作更加方便C.不会出现下溢的情况D.不会出现上溢的情况4.采用两类不同存储结构的字符串可分别简称为( B )A.主串和子串B.顺序串和链串C.目标串和模式串D.变量串和常量串5.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是:BA. 110 B .108C. 100D. 1206.串是一种特殊的线性表,其特殊性体现在:BA.可以顺序存储 B .数据元素是一个字符C. 可以链接存储D. 数据元素可以是多个字符7.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为:CA. 2h B .2h-1C. 2h+1D. h+1软件开发网8.树的基本遍历策略可分为先根遍历和后根遍历;二叉树的基本遍历策略可分为先序遍历、中序遍历和后序遍历。
这里,我们把由树转化得到的二叉树叫做这棵树对应的二叉树。
下列结论哪个正确?AA. 树的先根遍历序列与其对应的二叉树的先序遍历序列相同B .树的后根遍历序列与其对应的二叉树的后序遍历序列相同C. 树的先根遍历序列与其对应的二叉树的中序遍历序列相同D. 以上都不对9.一个有n个顶点的无向图最多有多少边?CA. n B .n(n-1)C. n(n-1)/2D. 2n10.在一个图中,所有顶点的度数之和等于所有边数的多少倍?CA. 1/2 B .1C. 2D. 411.当在二叉排序树中插入一个新结点时,若树中不存在与待插入结点的关键字相同的结点,且新结点的关键字小于根结点的关键字,则新结点将成为(A)A.左子树的叶子结点B.左子树的分支结点C.右子树的叶子结点D.右子树的分支结点软件开发网12.对于哈希函数H(key)=key%13,被称为同义词的关键字是( D )A.35和41B.23和39C.15和44D.25和51二、已知某棵二叉树的前序遍历结果为A,B,D,E,G,C,F,H,I,J,其中中序遍历的结果为D,B,G,E,A,H,F,I,J,C。
数据结构试卷(A)
1.设顺序表va中的数据元素递增有序,试写一算法,将x插入到顺序表的适当位置上,以保持该表的有序性。
2.写一算法将单链表中值重复的结点删除,使所得的结果表中各结点值均不相同。
3.以多叉链表为存储结构,设计算法对树进行层次遍历。
4.写出图的深度优先遍历算法。
五、综合应用题(任选3题每题10分共30分)
3.下列4个广义表中,长度为1,深度为4的广义表是( )。
(A)((), ((a)))(B)((((a), b)),c)
(C)(((a, b),(c)))(D)(((a, (b), c)))
4.具有4个顶点的无向完全图有( )条边。
(A)6(B)12(C)16(D)20
5.二叉树的顺序存储结构适合于()。
数据结构与算法
试卷类型
A
考试班级
3.给定二叉树的两种遍历序列,分别是:
前序遍历序列:D,A,C,E,B,H,F,G,I;
中序遍历序列:D,C,B,E,H,A,G,I,F,
试画出二叉树B,并简述由任意二叉树B的前序遍历序列和中序遍历序列求二叉树B的思想方法。
4.假定对有序表:(3,5,8,17,24,30,42,54,63,72,87,95)进行折半查找,试回答下列问题:
8.一个具有n个顶点的无向图中,要连通全部顶点至少需要( )条边。
(A)n(B)n+1(C)n/2(D)n-1
9.具有线性结构的数据结构是( )。
A)图B)树C)队列D)广义表
西安科技大学2009—2010学年第1学期期末考试试题(卷)
院系:班级:姓名:学号:
装订线装订线以内不准作任何标记装订线
科目
(A)单枝二叉树(B)完全二叉树(C)平衡二叉树(D)二叉排序树
2数据结构试卷a答案
2011~2012学年第 1 学期期末考试试卷(A 卷)课程名称: 数据结构 任课教师姓名:卷面总分: 100 分 考试时长: 100 分钟 考试类别:闭卷 院(系): 专 业: 年级: 2010 姓 名: 学 号:阅卷教师(签字):一、 单项选择题(每题2分,共10题20分)1.以下那一个术语与数据的存储结构无关? 。
A .栈 B .哈希表 C .线索树D .双向链表2.链表不具有的特点是 。
A .插入、删除不需要移动元素B .可随机访问任一元素C .不必事先估计存储空间D .所需空间与线性表长度成正比3.算术表达式a+b*(c+d/e )转为后缀表达式后为 。
A .ab+cde/* B .abcde/+*+ C .abcde/*++ D .abcde*/++4.二维数组A[10][20]采用列优先的存储方法,若每个元素占2个存储单元,设A[0][0]的地址为100,则元素A[7][6]的存储地址为 。
A .232B .234C .390D .392装订线5.若一棵二叉树具有10 个度为2 的结点,5 个度为1 的结点,则度为0 的结点个数是 B 。
A.9 B.11 C.15 D.不确定6.一棵二叉树中序序列为FEABDC,后序序列为FBADCE,则层序序列为 D 。
A. ABCDEFB. EFCDBAC. FECDABD.7.在有向图G的是 D 。
A.G 中有弧<Vi,Vj>B.G 中有一条从Vi 到Vj 的路径C.G 中没有弧<Vi,Vj>D.G 中有一条从Vj 到Vi 的路径8.对于二叉排序树,下面的说法 C 是正确的。
A.二叉排序树是动态树表,查找不成功时插入新结点时,会引起树的重新分裂和组合(不用移动元素的树)B.对二叉排序树进行层序遍历可得到有序序列(应该是中序遍历)C.用逐点插入法构造二叉排序树时,若先后插入的关键字有序,二叉排序树的深度最大D.在二叉排序树中进行查找,关键字的比较次数不超过结点数的1/2(取决于二叉排序树的形状)9.一组记录的关键字为{47、75、55、30、42、90},则用快速排序方法并以第一个记录为支点得到的第一次划分结果是。
《数据结构》期末考A、B卷(本科)
武夷学院期末考试试卷( 09级计算机科学与技术专业2010 ~2011 学年度第 1 学期) 课程名称 数据结构 A 卷 考试形式 闭卷 考核类型 考试 本试卷共 五 大题,卷面满分100分,答题时间120分钟。
一、选择题:(本大题共10小题,每小题2分,共20分)1. 某内排序方法的稳定性是指( )。
A .该排序算法不允许有相同的关键字记录 B .该排序算法允许有相同的关键字记录 C .平均时间为0(n log n )的排序方法 D .以上都不对2.下面程序段的时间复杂度为( )。
for(i=2;i<=n;++I) for(j=2;j<=i-1;++j) {++x;a[i ,j]=x;}A.O (1)B.O (log 2n )C.O (n )D.O (n 2)3.非空的循环单链表head 的尾结点p 满足( )。
A.p->next=head ;B. p->next=NULL ;C.p =NULL ;D. p->next->next =head ;4.设栈s 和队列Q 的初始状态为空, 元素b 1 ,b 2, ,b 3 , b 4 , b 5 和b 6 依次通过栈S ,一个元素出栈后即进队列Q ,若6个元素出队的序列是b 2 ,b 4 ,b 3 ,b 6 ,b 5 ,题号 一二三四五六七八总分 复核人得分得分 评卷人………………密……………………封…………………………装…………………订………………………线………………………系别 专业(班级) 姓名 学号b 1 ,,则栈S的容量至少应该是()。
A. 3B. 4C. 5D.其它5.表头和表尾均为空表的广义表是()。
A.()B.(())C.((()))D.((),())6.下列二叉排序树中,满足平衡二叉树定义的是()。
A . B.C. D.7.二维数组A的成员是4个字符(每个字符占一个存储单元)组成的串,行下标i的范围从1到8,列下标j的范围从1到10,若A按行优先方式存储,起始地址为SA,那么元素A[8][5]的起始地址为()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
徐州工程学院数据结构期末试卷A答案2009 — 2010 学年第二学期课程名称数据结构试卷类型期末考试形式闭卷考试时间 100 分钟命题人鞠训光 2010 年 6 月 7 日使用班级 08电本教研室主任年月日教学院长年月日姓名班级学号 .题号一二三四五六七八总分总分20 15 15 10 40得分一、填空题(共8 小题,每空 1 分,共计20 分)1.栈和队列都是线性_结构;对于栈只能在_栈顶_ 插入和删除元素;对于队列只能在_队尾_插入元素和在_ 队头删除元素。
2..假设为循环队列分配的向量空间为Q[20],若队列的长度和队头指针值分别为10和17,则当前尾指针的值为___7___。
3.在进行直接插入排序时,其数据比较次数与数据的初始排列__ 有_______关;而在进行直接选择排序时,其数据比较次数与数据的初始排列____ 无_______关。
5.在一棵具有n个结点的二叉树中,所有结点的空子树个数等于 n+1 、第i层上至多有个2i-1 结点。
6.若一个图的顶点集为{a,b,c,d,e,f},边集为{(a,b),(a,c),(b,c),(d,e)},则该图含有___3____个连通分量。
7.开放定址法、链地址法。
8.若对关键字序列(49,38,65,97,76,13,27,48,55,04)进行一趟增量为5的希尔排序,则得到的结果为(13,27,48,55,04,49,38,65,97,76)。
9. 在有序表(12,24,36,48,60,72,84)中折半查找关键字60时所需进行的关键字比较次数为__3___。
10. 一棵含999个结点的完全二叉树的深度为___10____。
含n个顶点的无向连通图中至少含有__n-1____条边。
11.已知一棵二叉树,分支数为5,度为2的结点2,则该树中共有______6______ 个结点。
12.设二叉树结点的先根序列为ABEDCFGH,中根序列为EDBAFCHG,则二叉树中叶子结点是_D,F,H ___。
13.若由3,6,8,13,10作为叶子结点的值生成一棵哈夫曼树,则该树的高度为 4 ,带权路径长度为 89 。
二、选择题(共15小题,每题 1 分,共计15 分)1.算法指的是( D )A.计算机程序 B.解决问题的计算方法C.排序算法 D.解决问题的有限运算序列2.如下陈述中正确的是(A )A.串是一种特殊的线性表 B.串的长度必须大于零C.串中元素只能是字母 D.空串就是空白串3.若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( D ) A.3,2,6,1,4,5 B.5,6,4,2,3,1C.1,2,5,3,4,6 D.1,2,5,6,4,34.在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行( B ) A. s->next=p;p->next=s B. s->next=p->next;p->next=sC. s->next=p->next;p=s D. p->next=s;s->next=p5.在按层次遍历二叉树的算法中,需要借助的辅助数据结构是(A)A.队列B.栈C.线性表D.有序表6.图的邻接矩阵表示法适用于表示(C)A.无向图B.有向图C.稠密图D.稀疏图7.深度为5的二叉树其结点数最多为 C 。
A、16;B、30;C、31;D、32。
8.设单循环链表中结点的结构为(data,next),且rear是指向非空的带表头结点的单循环链表的尾结点的指针。
若想删除链表第一个结点,则应执行下列哪一个操作( D )A. s=rear; rear=rear->next; delete s;B. rear=rear->next; delete rear;C. rear=rear->next->next; delete rear;D.s=rear->next->next; rear->next->next=s->next; delete s;9.线性表采用链式存储时,结点的存储地址( B )A.必须是不连续的 B.连续与否均可C.必须是连续的 D.和头结点的存储地址相连续10.线性链表不具有的特点是(A )。
A.随机访问 B.不必事先估计所需存储空间大小C.插入与删除时不必移动元素 D.所需空间与线性表长度成正比11. 含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为( D )A.e B.2e C.n2-e D.n2-2e12.用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的变化情况如下:20,15,21,25,47,27,68,35,8415,20,21,25,35,27,47,68,8415,20,21,25,27,35,47,68,84则所采用的排序方法是(B )A.选择排序 B.快速排序 C.归并排序 D.希尔排序13. 采用邻接表存储的图的广度优先遍历算法类似于二叉树的 D 。
A.先序遍历; B.中序遍历;C.后序遍历; D.按层遍历。
14. 若一个图的边集为{<1,2>,<1,4>,<2,5>,<3,1>,<3,5>,<4,3>},则从顶点1开始对该图进行深度优先搜索,得到的顶点序列可能为 D 。
A、1,2,5,4,3;B、1,2,3,4,5;C、1,4,3,2,5;D、1,2,5,3,4。
15. 假定对元素序列(2,3,5,9,1,12)进行堆排序,并且采用小根堆,则由初始数据构成的初始堆为 C 。
A、1,3,5,2,9,12;B、1,3,5,9,2,12;C、1,2,5,9,3,12;D、1,5,3,9,12,2。
三、判断题(对的打√,错的打×共15 小题,每题 1 分,共计15 分)1、在线性结构中,每个结点都有一个直接前驱和一个直接后继。
(×).2、在堆中,以任何结点为根的子树仍然为堆。
(√)3、完全二叉树就是满二叉树。
(×)4、若将一棵树转换成二叉树,则该二叉树的根结点一定没有右子树(√)。
5、线性的数据结构可以顺序存储,也可以链接存储。
非线性的数据结构只能链接存储。
(×)6、在AOE网中,关键路径是唯一的。
(×)7、哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。
(√)8、连通分量是无向图中的极小连通子图。
(×)9、邻接表只能用于有向图的存储,邻接矩阵对于有向图和无向图的存储都适用。
(×)10、在散列法中,一个可用散列函数必须保证绝对不产生冲突。
(╳)11、完全二叉树的某结点若无左孩子,则它必是叶结点。
(√)12、在采用线性探测法处理冲突的散列表中,所有的同义词在表中相邻。
(×)13、栈和队列逻辑上都是线性表。
(√)14、快速排序是一种稳定的排序方法。
(×)15、15、树中结点的最大层次称为树的高度(√)。
四、算法填空题:将折半查找的非递归算法中的空白处进行正确填写。
(每空2分,共计10分)int Search_Bin(SSTable ST,KeyType key){ int low=1;high=_ST.length_________;(1)While (__low<=high _____________) { (2)mid=_(low+high)/2________________;(3)if (EQ(key,ST.elem[mid].key ) return mid;else if (LT(key,ST. elem[mid].key)) _ high=mid-1___________;(4)else __low=mid+1________________;(5) }return 0;}// Search_Bin五、综合应用题(每题10分,共计40 分)1.已知一个连通图的边集为{(1,2)3,(1,3)6,(1,4)8,(2,3)4,出发,求出此图的深度和广度(2,5)10,(3,5)12,(4,5)2},若从顶点V1优先遍历序列,按照普里姆算法求最小生成树并画出,写出依次得到的各条边.1.深度优先:1 2 3 5 4 广度优先: 1 2 3 4 5普里姆算法依次得到的各边(1,2)3, (2,3)4, (1,4)8, (4,5)2最小生成树如图所示:2.设有一个模式串为abaabcac,如图。
试根据KMP算法的思想求出其next[j]函数值。
j 1 2 3 4 5 6 7 8模式串 a b a a b c a cNext[j] 0 1 1 2 2 3 1 23.算法编程:归并两个“其数据元素按值非递减有序排列的”顺序线性表LA和LB,求得线性表LC也具有同样特性:设La = (a1, …, ai, …, an)Lb = (b1, …, bj, …, bm)Lc = (c1, …, ck, …, cm+n)则Ck = k = 1, 2, …, m+n1.分别从LA和LB中取得当前元素ai和bj;2.若ai≤bj,则将ai插入到LC中,否则将bj插入到LC中。
3.不需要建初始顺序表La、Lb。
void MergeList(List La, List Lb, List &Lc) {// 已知线性表La和Lb中的元素按值非递减排列。
// 归并La和Lb得到新的线性表Lc,// Lc的元素也按值非递减排列。
InitList(Lc);i = j = 1; k = 0;La_len = ListLength(La);Lb_len = ListLength(Lb);while ((i <= La_len) && (j <= Lb_len)) { // La和Lb均非空GetElem(La, i, ai); GetElem(Lb, j, bj);if (ai <= bj) { ListInsert(Lc, ++k, ai); ++i; }else { ListInsert(Lc, ++k, bj); ++j; }}while (i <= La_len) { GetElem(La, i++, ai);ListInsert(Lc, ++k, ai);} while (j <= Lb_len) { GetElem(Lb, j++, bj);ListInsert(Lc, ++k, bj);} } // merge_list。