数据结构自测试题及答案
- 格式:doc
- 大小:82.00 KB
- 文档页数:5
得分一、单项选择题(10 小题,每小题 2 分,共 20 分)1.设栈 S 和队列 Q 的初始状态为空,元素 e1,e2,e3,e4,e5,e6 依次通过栈 S,一个元素出栈后即进入队列 Q,若 6 个元素出队的顺序是 e2,e4,e3,e6,e5,e1,则栈 S 的容量至少应该是()。
BA.2B.3C.4D.62.由 4 个叶子结点构造一棵哈夫曼树,该树的总结点数是(A.4 B.5 C.6D)。
D.73.对于长度为m(m>1)的指定序列,通过初始为空的一个栈、一个队列后,错误的叙述是)。
(DA.若入栈和入队列的序列相同,则出栈序列和出队序列可能相同B.若入栈和入队列的序列相同,则出栈序列和出队序列可以互为逆序C.入队序列与出队序列关系为1:1,而入栈序列与出栈序列关系是1: n (n≥1)D.入队序列与出队序列关系为1: n (n≥1),而入栈序列与出栈序列关系是1:14.在一个单链表 HL 中,若要删除由指针 q 所指结点的后继结点,则执行(A)。
A.p=q->next; q->next=p->next; C.p=q->next; p->next=q->next;B.p=q->next; q->next=p;D.q->next= q->next->next; q->next=q;5.假设有如下遗产继承规则:丈夫和妻子可以相互继承遗产;子女可以继承父亲或母亲的遗产;子女之间不能相互继承。
则表示该遗产继承关系的数据结构应该是()。
A.树B.图C.线性表D.集合B6.设数组 S[n]作为两个栈 S1 和 S2 的存储空间,对任何一个栈只有当 S[n]全满时才不能进行进栈操作。
为这两个栈分配空间的最佳方案是(A.S1 的栈底位置为 0,S2 的栈底位置为n-1B.S1 的栈底位置为 0,S2 的栈底位置为n/2C.S1 的栈底位置为 0,S2 的栈底位置为nD.S1 的栈底位置为 0,S2 的栈底位置为 1A)。
《数据结构》第二次单元测试姓名学号. 分数. 一、单项选择题(每小题2分,共26分)1. 数据结构是指()。
A.数据元素的组织形式B.数据类型C.数据存储结构D.数据定义2. 数据在计算机存储器内表示时,物理地址与逻辑地址不相同的,称之为()。
A.存储结构B.逻辑结构C.链式存储结构D.顺序存储结构3. 树形结构是数据元素之间存在一种()。
A.一对一关系B.多对多关系C.多对一关系D.一对多关系4. 在一个长度为n的顺序表中删除第i个元素(0<=i<=n)时,需向前移动个元素。
A.n-i B.n-i+l C.n-i-1 D.i5. 线性表采用链式存储时,其地址________。
A.必须是连续的B.一定是不连续的C.部分地址必须是连续的D.连续与否均可以6.下图所示的是线性表的链接存储结构,采用的是( )链表。
A. 单链表B. 十字链表C.双链表D.循环链表7.一个二叉树按顺序方式存储在一个维数组中,如图0 1 2 3 4 5 6 7 8 9 10 11 12 13 14则结点E在二叉树的第()层。
A. 1B. 2C. 3D.48.线性表采用链式存储时,结点的存储地址()A.连续与否均可 B.必须是不连续的C.必须是连续的 D.和头结点的存储地址相连续9.空串与空格字符组成的串的区别在于()。
A.没有区别B.两串的长度不相等C.两串的长度相等D.两串包含的字符不相同10.栈和队列的共同特点是( )。
A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点11.用链接方式存储的队列,在进行插入运算时( D ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改12.以下数据结构中哪一个是非线性结构?( d )A. 队列B. 栈C. 线性表D. 二叉树13.二叉树的第k层的结点数最多为( D ).A.2k-1 B.2K+1 C.2K-1 D. 2k-1二、填空题(每空2分,共32分)1.一维数组的逻辑结构是__线性____,存储结构是____顺序存储____;对于二维或多维数组,分为____顺序____和_____链式______两种不同的存储方式。
数据结构综合测试(⼀)(长春理⼯⼤学精品课)数据结构测试(长春理⼯⼤学精品课)综合测试⼀⼀、选择1.数据结构中,与所使⽤的计算机⽆关的是数据的()结构。
查看答案A 顺序B 物理C 逻辑D 物理和存储正确答案为C解释:与计算机⽆关的结构是逻辑结构,是⽤户对数据的组织形式,存储时的物理结构才与计算机有关。
收起2.在长度为n的顺序表中插⼊⼀个元素时,等概率情况下的平均移动元素的次数是()查看答案A (n-1)/2B n/2C n*(n-1)/2D (n+1)/2正确答案为B解释:在往长度为n的线性表中插⼊元素时,位置可以是1,2,3.......n+1,因此移动元素个数为[n+(n-1)+......+0]/ (n+1)=n/2收起3.对于⼀个头指针为H的带头结点的单链表,判定该表为空表的条件是()。
查看答案A H==NULLB H!=NULLC H→next ==HD H→next==NULL解释:A答案是不带头结点的单链表H为空的判定条件B答案是不带头结点的单链表H不为空的判定条件C答案是带头结点的循环单链表H为空的判定条件收起4.在⼀个顺序表中,若表的第⼀个元素的存储地址是210,每⼀个元素的长度为3,则第5个元素的存储地址是()。
查看答案A 219B 222C 225D 228正确答案为B解释:第5个元素之前有4个元素,因此地址为210+(4*3)=222收起5.栈S最多能容纳4个元素,现有6个元素按a,b,c,d,e,f的顺序进栈,下⾯序列()是可能的出栈序列。
查看答案A edcbafB bcefadC cbedafD adfebc正确答案为C解释:堆栈的特点是后进先出,⽽且最多⼊栈4个元素收起6.循环队列⽤数组A[M]存放元素,已知其头尾指针分别为front和rear,则当前队列中的元素个数是()。
查看答案A rear-front+1B rear-front-1解释:若rear>=front 则元素个数为rear-front 若rear7.已知⼀棵⼆叉树的有35个叶⼦结点,则该⼆叉树⾄少有()个结点。
数据结构试题及答案数据结构试题⼀、单选题(每题 2 分,共20分)1.1. 对⼀个算法的评价,不包括如下( B )⽅⾯的容。
A.健壮性和可读性B.并⾏性 C.正确性 D.时空复杂度2.2. 在带有头结点的单链表HL中,要向表头插⼊⼀个由指针p指向的结点,则执⾏( A )。
A. p->next=HL->next; HL->next=p;B. p->next=HL; HL=p;C. p->next=HL; p=HL;D. HL=p; p->next=HL;3.3. 对线性表,在下列哪种情况下应当采⽤链表表⽰?( B )A.经常需要随机地存取元素B.经常需要进⾏插⼊和删除操作C.表中元素需要占据⼀⽚连续的存储空间D.表中元素的个数不变4.4. ⼀个栈的输⼊序列为 1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35.5. AOV⽹是⼀种( D )。
A.有向图 B.⽆向图 C.⽆向⽆环图D.有向⽆环图6.6. 采⽤开放定址法处理散列表的冲突时,其平均查找长度( B )。
A.低于法处理冲突 B. ⾼于法处理冲突C.与法处理冲突相同 D.⾼于⼆分查找7.7. 若需要利⽤形参直接访问实参时,应将形参变量说明为( D )参数。
A.值 B.函数 C.指针 D.引⽤8.8. 在稀疏矩阵的带⾏指针向量的存储中,每个单链表中的结点都具有相同的( A )。
A.⾏号B.列号 C.元素值 D.⾮零元素个数9.9. 快速排序在最坏情况下的时间复杂度为( D )。
A.O(log2n) B.O(nlog2n) C.O(n) D.O(n2)10.10. 从⼆叉搜索树中查找⼀个元素时,其时间复杂度⼤致为( C )。
A. O(n)B. O(1)C. O(log2n) D. O(n2)⼆、运算题(每题 6 分,共24分)1. 1. 数据结构是指数据及其相互之间的_对应关系(联系)。
数据结构期末考试题及答案一、选择题(每题2分,共10题)1. 数据结构是指()A. 存储和组织数据的方式B. 对数据进行计算和处理的方法C. 数据的物理表示形式D. 数据的逻辑结构答案:A. 存储和组织数据的方式2. 在数据结构中,栈是一种()A. 先进先出的数据结构B. 后进先出的数据结构C. 随机存取的数据结构D. 按键值查找的数据结构答案:B. 后进先出的数据结构3. 下列哪种数据结构不支持随机访问?()A. 队列B. 栈C. 数组D. 链表答案:D. 链表4. 在二叉树中,每个节点最多可以有几个子节点?()A. 0B. 1C. 2D. 无限多答案:C. 25. 在图的表示方法中,邻接矩阵适用于()A. 稠密图B. 稀疏图C. 有向图D. 无向图答案:A. 稠密图6. 下列排序算法中,最坏情况时间复杂度为O(nlogn)的是()A. 冒泡排序B. 插入排序C. 快速排序D. 选择排序答案:C. 快速排序7. 广度优先搜索算法用于()A. 求最短路径B. 求全排列C. 求最小生成树D. 求图的连通分量答案:A. 求最短路径8. 哈希表的查找时间复杂度为()A. O(1)B. O(n)C. O(logn)D. O(n^2)答案:A. O(1)9. AVL树是一种()A. 无序树B. 有序树C. 平衡树D. 非平衡树答案:C. 平衡树10. 以下哪个不属于基本的查找算法?()A. 二分查找B. 插值查找C. 散列查找D. 顺序查找答案:C. 散列查找二、填空题(每题4分,共4题)11. 下列不是线性表的是()答案:二叉树12. 在冒泡排序中,每一轮的比较次数是________答案:n-113. 在堆排序中,堆的建立时间复杂度为________答案:O(n)14. 从一个顶点到其余各顶点的最短路径算法是________答案:Dijkstra算法三、简答题(每题10分,共3题)15. 请简要说明栈的应用场景,并给出一个具体实例。
《数据结构》单元测试1一、选择题(每题2分,共40分)1.数据的最小单位是( A)。
(A) 数据项(B) 数据类型(C) 数据元素(D) 数据变量2. 栈和队列的共同特点是( A )。
(A)只允许在端点处插入和删除元素(B)都是先进后出(C)都是先进先出(D)没有共同点3. 用链接方式存储的队列,在进行插入运算时( D )。
(A)仅修改头指针(B)头、尾指针都要修改(C)仅修改尾指针 (D)头、尾指针可能都要修改4. 以下数据结构中哪一个是非线性结构?( D )(A)队列(B)栈(C)线性表(D)二叉树5.函数substr(“DATASTRUCTURE”,5,9)的返回值为( A )。
(A) “STRUCTURE”(B) “DATA”(C) “ASTRUCTUR”(D) “DATASTRUCTURE”6.设一个有序的单链表中有n个结点,现要求插入一个新结点后使得单链表仍然保持有序,则该操作的时间复杂度为( D)。
(A) O(log2n) (B) O(1) (C) O(n2) (D) O(n)7.设一棵m叉树中度数为0的结点数为N0,度数为1的结点数为Nl,……,度数为m的结点数为Nm,则N0=( B)。
(A) Nl+N2+……+Nm(B) 1+N2+2N3+3N4+……+(m-1)Nm(C) N2+2N3+3N4+……+(m-1)Nm (D) 2Nl+3N2+……+(m+1)Nm 8.设有序表中有1000个元素,则用二分查找查找元素X最多需要比较( B)次。
(A) 25 (B) 10 (C) 7 (D) 19. 二叉树的第k层的结点数最多为( D )。
(A)2k-1 (B) 2K+1 (C) 2K-1 (D)2k-110. 树最适合用来表示( C )。
(A)有序数据元素(B)无序数据元素(C)元素之间具有分支层次关系的数据 (D)元素之间无联系的数据个权构成一棵Huffman树,其节点总数为( A )。
《数据结构》试卷及答案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 ) 不是树的存储形式。
数据结构考试题及答案一、选择题1. 下列哪种数据结构是一种线性结构?A. 树B. 栈C. 图D. 队列答案:B. 栈2. 以下哪种不是二叉树的遍历方式?A. 先序遍历B. 层序遍历C. 后序遍历D. 中序遍历答案:B. 层序遍历3. 在队列中,哪种操作不是O(1)时间复杂度的?A. 入队B. 出队C. 判空D. 获取队首元素答案:D. 获取队首元素二、填空题4. 二叉查找树的中序遍历结果为_______。
答案:升序排列的序列5. 栈的特点是_______进,_______出。
答案:后进,先出6. 图中两点间存在边则称它们为_______。
答案:邻接点三、简答题7. 请简要介绍一下栈和队列的应用场景及区别。
答:栈和队列都是常用的数据结构,栈适合用于实现括号匹配、表达式求值等场景,而队列常用于实现广度优先搜索、缓存队列等。
栈是一种后进先出的数据结构,而队列是一种先进先出的数据结构。
8. 什么是哈希表?它的优缺点分别是什么?答:哈希表是一种通过哈希函数将关键字映射到数组位置的数据结构。
其优点是能够快速查找、插入、删除元素,时间复杂度接近O(1);缺点是可能发生哈希冲突,导致性能下降。
四、综合题9. 给定以下无向图的邻接矩阵表示,请写出图的深度优先搜索(DFS)遍历路径。
```0 1 2 30 0 1 0 11 1 0 1 12 0 1 0 13 1 1 1 0```答:起始节点为0,路径:0 - 1 - 3 - 210. 写出以下树的层序遍历结果。
```1/ \2 3/ \ / \4 5 6 7```答:1 - 2 - 3 - 4 - 5 - 6 - 7以上就是数据结构考试题及答案,希望对您有所帮助。
如果有不清楚的地方,欢迎随时向老师询问。
祝您考试顺利!。
数据结构与算法测试题+参考答案一、单选题(共80题,每题1分,共80分)1、某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用什么存储方式最节省运算时间?A、仅有头指针的单循环链表B、双链表C、仅有尾指针的单循环链表D、单链表正确答案:C2、数据结构研究的内容是()。
A、数据的逻辑结构B、数据的存储结构C、建立在相应逻辑结构和存储结构上的算法D、包括以上三个方面正确答案:D3、下列关于无向连通图特征的叙述中,正确的是:所有顶点的度之和为偶数边数大于顶点个数减1至少有一个顶点的度为1A、只有1B、1和2C、1和3D、只有2正确答案:A4、下面的程序段违反了算法的()原则。
void sam(){ int n=2;while (n%2==0) n+=2;printf(“%d”,n);}A、确定性B、可行性C、有穷性D、健壮性正确答案:C5、对任意给定的含 n (n>2) 个字符的有限集 S,用二叉树表示 S 的哈夫曼编码集和定长编码集,分别得到二叉树 T1 和 T2。
下列叙述中,正确的是:A、出现频次不同的字符在 T2 中处于相同的层B、出现频次不同的字符在 T1 中处于不同的层C、T1 的高度大于 T2 的高度D、T1 与 T2 的结点数相同正确答案:A6、数据序列{ 3,2,4,9,8,11,6,20 }只能是下列哪种排序算法的两趟排序结果?A、快速排序B、选择排序C、插入排序D、冒泡排序正确答案:A7、设散列表的地址区间为[0,16],散列函数为H(Key)=Key%17。
采用线性探测法处理冲突,并将关键字序列{ 26,25,72,38,8,18,59 }依次存储到散列表中。
元素59存放在散列表中的地址是:A、11B、9C、10D、8正确答案:A8、采用递归方式对顺序表进行快速排序,下列关于递归次数的叙述中,正确的是:A、每次划分后,先处理较短的分区可以减少递归次数B、递归次数与每次划分后得到的分区处理顺序无关C、递归次数与初始数据的排列次序无关D、每次划分后,先处理较长的分区可以减少递归次数正确答案:B9、以下数据结构中,()是非线性数据结构。
一、单选题1、若串S= 'software',其前缀真子串的数目是()。
A.9B.8C.7D.10正确答案:C2、两个串相等的充要条件是()。
A.两个字符串的长度相等且对应位置上的字符也相等B.两个字符串的长度相等C.两个字符串中对应位置上的字符相等D.两个字符串存储形式相同正确答案:A3、函数strcmp('stcabuc','stbabuc')的返回值是()。
A.1B.-1C.0D.2正确答案:A4、StrIndex (‘DATASTRUCTURE',1,‘STR')= ()。
A.9B.5C.3D.7正确答案:B5、设正文串长度为n,模式串长度为m,则模式匹配的KMP算法的时间复杂度为()。
A.O(n)B.O(m)C.O(m+n)D.O(m*n)正确答案:C6、设S="",则LenStr(S)=()。
A.1B.2C.3D.0正确答案:D7、设目标串T="aabaababaabaa",模式P="abab",朴素匹配算法的外层循环进行了( )次。
A.5B.9C.4D.1正确答案:A8、若串S='SOFT',其子串的数目最多是()。
A.9B.12C.10D.11正确答案:D9、设串S1='ABCDEFG',S2='PQRST' ,则ConcatStr(SubStr(S1,2,LenStr(S2)),SubStr(S1,LenStr(S2),2))的结果串为( )。
A.'BCPQRST'B.'BCDEFEF'C.'BCDEF'D.'BCDEFG'正确答案:B10、某串的长度小于一个常数,则采用()存储方式最节省空间。
A.堆结构B.顺序C.链式D.无法确定正确答案:B11、二维数组A的每个元素都是6个字符组成的串,行下标i的范围从0到8,列下标j的范围从1到10,则如果A按行存放元素A[8][5]的起始地址与A按列存放时元素()的起始地址一致。
数据结构与算法题库(含参考答案)一、单选题(共100题,每题1分,共100分)1、在一次校园活动中拍摄了很多数码照片,现需将这些照片整理到一个PowerPoint 演示文稿中,快速制作的最优操作方法是:A、创建一个 PowerPoint 相册文件。
B、创建一个 PowerPoint 演示文稿,然后批量插入图片。
C、创建一个 PowerPoint 演示文稿,然后在每页幻灯片中插入图片。
D、在文件夹中选中所有照片,然后单击鼠标右键直接发送到PowerPoint 演示文稿中。
正确答案:A2、下面对“对象”概念描述错误的是A、对象不具有封装性B、对象是属性和方法的封装体C、对象间的通信是靠消息传递D、一个对象是其对应类的实例正确答案:A3、设栈与队列初始状态为空。
首先A,B,C,D,E依次入栈,再F,G,H,I,J 依次入队;然后依次出队至队空,再依次出栈至栈空。
则输出序列为A、F,G,H,I,J,E,D,C,B,AB、E,D,C,B,A,J,I,H,G,FC、F,G,H,I,J,A,B,C,D,E,D、E,D,C,B,A,F,G,H,I,J正确答案:A4、设表的长度为 20。
则在最坏情况下,冒泡排序的比较次数为A、20B、19C、90D、190正确答案:D5、设二叉树的前序序列为 ABDEGHCFIJ,中序序列为 DBGEHACIFJ。
则后序序列为A、DGHEBIJFCAB、JIHGFEDCBAC、GHIJDEFBCAD、ABCDEFGHIJ正确答案:A6、Excel工作表B列保存了11位手机号码信息,为了保护个人隐私,需将手机号码的后 4 位均用“*”表示,以 B2 单元格为例,最优的操作方法是:A、=REPLACE(B2,7,4,"****")B、=REPLACE(B2,8,4,"****")C、=MID(B2,7,4,"****")D、=MID(B2,8,4,"****")第 10 组正确答案:B7、小金从网站上查到了最近一次全国人口普查的数据表格,他准备将这份表格中的数据引用到 Excel 中以便进一步分析,最优的操作方法是:A、通过 Excel 中的“自网站获取外部数据”功能,直接将网页上的表格导入到 Excel 工作表中。
一、单选题1、在数据结构中,从逻辑上可以将之分为()结构。
A.线性和非线性结构B.动态和静态结构C.紧凑和非紧凑结构D.内部和非内部结构正确答案:A2、算法的时间复杂度取决于()。
A.问题的规模B.待处理数据的初态C.没有正确答案D.问题的规模以及待处理数据的初态正确答案:D3、某算法的时间复杂度是O(n2),表明该算法的()。
A.执行时间与n2成正比B.问题规模与n2成正比C.执行时间等于n2D.问题规模是n2正确答案:A4、衡量算法效率优劣的不包括()。
A.正确性和可读性B.现实性C.健壮性/鲁棒性D.高效率与低存储正确答案:B5、算法效率分析的两个主要方面是()。
A.空间复杂度和时间复杂度B.数据复杂性和程序复杂性C.正确性和简明性D.可读性和文档性正确答案:A6、下面程序段的时间复杂度为()。
for(i=0;i<n;i++)for(j=0;j<m;j++)A[i][j]=0;A.O(n*m)B.O(1)C.O(n2)D.O(m2)正确答案:A7、下面程序段的时间复杂度为()。
void sum(int n) //n为正整数{int p=1,sum=0,i;for(i=1;i<=n;i++){p*=i;sum+=p;}}A.O(n2)B.O(n)C.O(1)D.O(√n)正确答案:B8、下述哪一条是顺序存储结构的优点()。
A.插入运算方便B.随机存取C.可方便地用于各种逻辑结构的存储表示D.删除运算方便正确答案:B9、静态链表中指针表示的是()。
A.下一元素在数组中的下标B.左、右孩子地址C.数组下标D.内存地址正确答案:A10、若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为()。
A.O(n2)B.O(0)C.O(n)D.O(1)正确答案:C11、对于顺序表,访问结点和删除结点的时间复杂度分别为()。
A.O(n) O(n)B.O(1) O(n)C.O(1) O(1)D.O(n) O(1)正确答案:B12、对于一个带头结点的单链表,其头指针为head,判定该表为空表的条件是()。
一、单项选择题1. 将一个 n ×n 的三对角矩阵 A=[a ij ]的三条对角线上的元素按行优先顺序存储在一维数组B[1..3n-2]中,则元素a ij 在B 中的位置是________。
A. i+2j-12. 术语________与数据的逻辑结构无关。
A. 链式结构B. 线性结构C. 树型结构B. i+j+2C. 3i-j+1D. 2i+j-2D. 网状结构3. 对一个栈S 依次进行操作PUSH(S,1),PUSH(S,2),POP(S),PUSH(S,3),PUSH(S,4),POP(S),PUSH(S,5)后,栈 S 中从栈顶到栈底元素的排列顺序是________。
A. 5,3,1B. 1,3,5C. 2,4,5D. 5,4,24. 数组Q[0..n-1]作为一个循环队列,f 为队头元素的前一个位置,r 为队尾元素的位置,那么在队列未满时进行将元素x 进队的操作需要执行________。
A. r=r+1;Q[r]=x ;C. Q[r]=x ;r=r+1; B. r=(r+1) % n ;Q[r]=x ;D. Q[r]=x ;r=(r+1) % n ;5. 若一棵二叉树的先序序列是ABCEGDF ,中序序列是GECBFDA ,那么其后序序列是________。
A. EGCDFBA6. ________的邻接矩阵是对称矩阵。
A. 有向图 B. 无向图B. AGECDFB C. ABDFCEG D. GECFDBA C. AOV-网 D. AOE-网7. 有n 个顶点的强连通图至少含有________条弧(有向边)。
A. n B. n(n-1)/2 C. n-1 D. n+18.为了实现图的广度优先遍历,其广度优先搜索算法使用的一种辅助数据结构为_________。
A .栈B .队列C .二叉树D .集合9.长度为12 的有序表采用顺序存储结构,采用折半查找技术,在等概率情况下,查找成功的平均查找长度是_________。
第一章绪论一.填空题1.数据结构是一门研究非数值计算的程序设计问题中计算机的_____________ 以及它们之间的_________ 和操作等的学科。
2.数据结构包括数据的_____________ 结构、_____________ 结构和运算。
3.数据的物理结构被分为_________、________、__________和___________四种。
4.数据的逻辑结构是指数据元素之间的逻辑关系,根据数据元素之间关系的不同特性,逻辑结构通常有_______________ ,________________ ,________________ 和__________________四类基本结构。
5.一种抽象数据类型包括 ____________和_____________ 两个部分。
6.数据结构是指数据及其相互之间的______________。
当结点之间存在M 对N(M:N)的联系时,称这种结构为____________当结点之间存在1 对N(1:N)的联系时,称这种结构为____________。
7.数据结构被形式地定义为(D, R),其中D是___________ 的有限集合,R是D上的有限集合。
8. 数据的基本单位是________,它在计算机中是作为一个整体来处理的。
9.算法的特性有________,___________ ,____________ ,_______________ 和__________ 等五种特性。
10.通常从四个方面评价算法的质量:_________、_________、_________和_________。
11.算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
12.算法的效率可分为______________ 效率和__________________ 效率。
13.算法的时间复杂度为(3n3+2000n log2n+90)/n2,其数量级表示为________。
数据结构测试题1.下列关于满二叉树的描述,哪个是正确的?() [单选题] *A. 高度为h的满二叉树有h个叶子节点B. 每个节点都有两个子节点C. 有度为1的节点D.所有叶子节点都在同一层(正确答案)2.完全二叉树的以下哪个描述是正确的?() [单选题] *A. 所有叶子节点都在同一层B. 除了最后一层外,其余层的节点数都达到最大(正确答案)C. 任意节点的左子树和右子树都是完全二叉树D. 高度为h的完全二叉树有2^h个节点3.某二叉树共有399个节点,其中有199个度为2的节点,则该二叉树中的叶子节点数为多少?() [单选题] *A. 不存在这样的二叉树B. 200(正确答案)C. 198D. 1994.某二叉树共有50个节点,度为0的节点个数为5个,则该二叉树中的度为1的节点数为多少?() [单选题] *A. 6B. 4C. 41(正确答案)D. 395.设一棵二叉树的中序遍历序列为BADCE,后序遍历序列为BDECA,则二叉树的先序遍历序列是?() [单选题] *A. adbceB. decabC. debacD. abcde(正确答案)6.一棵完全二叉树的前序序列为ABDHECFG,中序遍历为HDBEAFCG,则该二叉树的后续遍历可能是以下哪个选项?() [单选题] *A. ABDHECFGB. HDEBFGCA(正确答案)C. DBGEAFHCD. DEBFCA7.一棵完全二叉树有10个叶子节点,且所有非叶子节点的度都为2,则这棵二叉树总共有多少个节点?() [单选题] *A. 19(正确答案)B. 20C. 21D. 228.对于一棵完全二叉树,其第5层有5个叶子节点,则这棵完全二叉树最多有多少个节点?() [单选题] *A. 22B. 21C. 23D. 20(正确答案)9. 6个结点的完全二叉树的深度为多少?() [单选题] *A. 2B. 3(正确答案)C. 4D. 510.深度为6的二叉树,最多有几个结点?() [单选题] *A. 63(正确答案)B. 62C. 64D. 6511.在一棵非空二叉树中,第i层(i≥1)上最多有()个节点 [单选题] *A. 2^iB. 2^(i-1)(正确答案)C. 2^(i+1)D. 2^(i-2)12.二叉树中,如果一棵树的先序遍历序列与后序遍历序列相同,则该二叉树是?[单选题] *A. 只有一个节点的二叉树(正确答案)B. 完全二叉树C. 二叉搜索树D. 满二叉树13.在一个二叉搜索树中,查找效率最高的情况是树的? [单选题] *A. 高度最低(正确答案)B. 节点最多C. 叶子节点最多D. 分支数最多14.若一棵二叉树每个非叶子节点都有两个非空子节点,且所有叶子节点都在同一层,这样的二叉树称为?[单选题] *A. 完全二叉树B. 满二叉树(正确答案)C. 平衡二叉树D. 二叉搜索树15.在二叉树中,哪种遍历方式先访问根节点?[单选题] *A. 前序遍历(正确答案)B. 中序遍历C. 后序遍历D. 层次遍历。
数据结构期中测试1.定义了一个结构体类型的普通变量,要使用其成员,则应该在变量和成员之间加()。
A:.(正确答案)B:>C:<D:&2.在定义结构体时会有一对{},在{}后不能省略的符号是下列哪一项()。
A:;(分号)(正确答案)B:,(逗号)C:""(双引号)D::(冒号)3.下列选项中关于什么是结构体描述正确的是()。
A:结构体是高级语言中的一种构造类型(正确答案)B:结构体是汇编语言中的一种指针类型C:结构体是高级语言中的一种指针类型D:结构体是C语言中的基本类型4.struct的作用是()。
A:定义整型变量B:定义结构体类型(正确答案)C:定义浮点型变量D:定义字符型变量5.定义了一个学生结构体,其中一个成员变量是年龄,应该使用()类型。
A:int(正确答案)B:floatC:小数D:浮点数6.p是一个结构体指针变量,它有一个成员变量叫sex,则使用格式正确的是()。
A:p->sex(正确答案)B:p%sexC:p#sexD:p&sex7.下列选项中是用来定义结构体的关键字是()。
A:struct(正确答案)B:functionC:staticD:stack8.数据分为原子类型(基本类型)和结构类型(构造类型),结构体属于()。
A:原子类型(基本类型)B:结构类型(构造类型)(正确答案)C:无类型D:以上都不对9.结构体定义会有一对{},在{}后不能省略的是()。
A:;(正确答案)B:.C:/D:>10.product属于结构体类型,要定义这种类型的变量pro定义正确的是()。
A:structproductpro;(正确答案)B:proproduct;C:structpro;D:以上都不对11.数据结构里,树形关系是()。
A:一对一关系B:一对多关系(正确答案)C:多对多关系D:没有关系12.数据结构里,线性结构是()。
A:一对一关系(正确答案)B:一对多关系C:多对多关系D:没有关系13.数据结构里,顺序存储是指()。
数据结构自测题1一、单项选择题1.线性表若采用链表存储结构时,要求内存中可用存储单元的地址( D ).A.必须是连续的B.部分地址必须是连续的C.一定是不连续的D.连续不连续都可以2。
在单链表中,增加头结点的目的是为了( C )A.使单链表至少有一个结点B.表示表结点中首结点的位置C.方便运算的实现D.说明单链表是线性表的链式存储实现3。
设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是e2、e4、e3、e6、e5、e1,则栈S的容量至少应是( B )A.2 B.3 C.4 D.54。
树结构中,前驱结点与后继结点之间存在( B )关系。
A.一对一B.一对多C.多对一D.多对多5.堆栈的特性描述是( B ).A.FIFO B.FILO C.FIFO和FILO D.FIFO或FILO6.队列的特性描述是( A )。
A.FIFO B.FILO C.FIFO和FILO D.FIFO或FILO 7。
下列数据结构中,是非线性结构的是( A )A.树B.堆栈C.队列D.循环队列8.设某个初始为空的容纳int型数据的堆栈进行了如下操作(每一步均未发生溢出):push (1)、push(3)、pop()、push(6)、push(1)、pop()、push(3)、push(8) 后,该堆栈中从栈顶到栈底的元素依次为( D )A.8 1 8 3 B.1 3 1 8 C.1 6 3 8 D.8 3 6 1二、判断题1.二叉树可以为空树。
(√)2.顺序表和链表都是线性表.(√)3。
线性表的长度是线性表占用的存储空间的大小.(√)4。
队列只能采用链式存储方式.(×)5。
由二叉树的先序序列和中序序列能唯一确定一棵二叉树。
(√)6。
存在有偶数个结点的满二叉树。
(×)三、填空题1。
数据结构是数据在计算机内的组成形式和相互关系。
考研数据结构测试题及答案### 考研数据结构测试题及答案#### 一、选择题1. 在数据结构中,以下哪种结构不是线性结构?A. 栈B. 队列C. 树D. 图答案:C2. 一个长度为n的有序数组,使用二分查找算法查找一个元素,最多需要比较几次?A. nB. log₂nC. n/2D. nlog₂n答案:B3. 以下哪个是链表的优点?A. 随机访问B. 插入和删除不需要移动元素C. 存储空间利用率高D. 所有都是答案:B#### 二、简答题1. 简述堆栈(Stack)的基本操作,并说明它们的特点。
答案:堆栈的基本操作包括:- Push:向栈顶添加一个元素。
- Pop:移除栈顶的元素,并返回该元素。
- Peek/Top:查看栈顶元素,但不移除它。
- IsEmpty:判断栈是否为空。
特点:- 遵循后进先出(LIFO)原则。
- 插入和删除操作都在栈顶进行,时间复杂度为O(1)。
2. 描述二叉搜索树(BST)的插入操作。
答案:二叉搜索树的插入操作如下:1. 从根节点开始,如果待插入节点的值小于当前节点的值,则移动到左子树。
2. 如果待插入节点的值大于当前节点的值,则移动到右子树。
3. 重复步骤1和2,直到找到一个空位置,将新节点插入。
4. 如果新节点的值等于当前节点的值,根据具体实现,可以选择不插入或覆盖现有节点。
#### 三、编程题1. 编写一个函数,实现单链表的反转。
```cstruct ListNode {int val;struct ListNode *next;};void reverseList(struct ListNode head) {struct ListNode *prev = NULL, *curr = *head, *next = NULL;while (curr != NULL) {next = curr->next;curr->next = prev;prev = curr;curr = next;}*head = prev;}```2. 给定一个整数数组,编写一个函数,找出数组中最长的连续子数组的长度。
数据结构第1~6章单元测试题学号姓名班级一、选择题(每小题2分,共38分。
每小题只有一个正确答案)()1、数据结构中,与所使用的计算机无关的是数据的结构。
A、存储B、物理C、逻辑D、物理和存储()2、计算机算法必须具备输入、输出和等5个特性。
A、可行性、可移植性和可扩充性B、可行性、确定性和有穷性C、确定性、有穷性和稳定性D、易读性、稳定性和安全性()3、向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动个元素A、8B、63.5C、63D、7()4、在n个元素的顺序表中,算法的时间复杂度是O(1)的操作是。
A、在第i个元素后插入一个新元素(1≤i≤n)B、删除第i个元素(1≤i≤n)C、将n个元素从大到小排序D、访问第i个元素(1≤i≤n)和求第i个元素的直接前驱(2≤i≤n)()5、在一个单链表中,已知*q结点是*p结点的前驱结点,若在*q和*p之间插入*s结点,则须执行。
A、s->next=p->next; p->next=s;B、q->next=s; s->next=p;C、p->next=s->next; s->next=p;D、p->next=s; s->next=q;()6、若线性表最常用的操作是存取第i个元素及其前驱的值,则采用存储方式节省时间。
A、单链表B、双向链表C、单循环链表D、顺序表()7、对于头指针为head的带头结点的单链表,判定该表为空表的条件是。
A、head==NULLB、head->next==NULLC、head->next=headD、head!=NULL()8、将长度为n的单链表链接在长度为m的单链表之后的算法时间复杂度。
A、O(1)B、O(n)C、O(m)D、O(m+n)()9、线性表L在情况下适用于使用链式结构实现。
A、需经常修改L中的结点值B、需不断对L进行删除插入C、L中含有大量的结点D、L中结点结构复杂()10、设依次进入一个栈的元素序列为c,a,b,d,则可得到出栈的元素序列是。
《数据结构》第二次单元测试姓名学号。
分数. 一、单项选择题(每小题2分,共26分)1. 数据结构是指().A。
数据元素的组织形式 B.数据类型C。
数据存储结构D。
数据定义2。
数据在计算机存储器内表示时,物理地址与逻辑地址不相同的,称之为()。
A。
存储结构B。
逻辑结构 C.链式存储结构 D.顺序存储结构3。
树形结构是数据元素之间存在一种()。
A.一对一关系B.多对多关系C.多对一关系D.一对多关系4。
在一个长度为n的顺序表中删除第i个元素(0〈=i<=n)时,需向前移动个元素。
A.n—i B.n-i+l C.n-i-1 D.i5. 线性表采用链式存储时,其地址________。
A.必须是连续的B.一定是不连续的C.部分地址必须是连续的D.连续与否均可以6。
下图所示的是线性表的链接存储结构,采用的是( )链表。
A. 单链表B. 十字链表 C。
双链表 D。
循环链表7.一个二叉树按顺序方式存储在一个维数组中,如图0 1 2 3 4 5 6 7 8 9 10 11 12 13 14则结点E在二叉树的第()层。
A。
1 B。
2 C。
3 D.48.线性表采用链式存储时,结点的存储地址()A.连续与否均可 B.必须是不连续的C.必须是连续的 D.和头结点的存储地址相连续9.空串与空格字符组成的串的区别在于().A。
没有区别 B.两串的长度不相等C.两串的长度相等D.两串包含的字符不相同10.栈和队列的共同特点是()。
A.只允许在端点处插入和删除元素B.都是先进后出C。
都是先进先出 D.没有共同点11.用链接方式存储的队列,在进行插入运算时( D ).A. 仅修改头指针B。
头、尾指针都要修改C. 仅修改尾指针D。
头、尾指针可能都要修改12.以下数据结构中哪一个是非线性结构?(d )A. 队列B. 栈C. 线性表D。
二叉树13.二叉树的第k层的结点数最多为( D )。
A.2k—1 B。
2K+1C.2K-1 D。
数据结构自测题1一、单项选择题1.线性表若采用链表存储结构时,要求内存中可用存储单元的地址( D )。
A.必须是连续的B.部分地址必须是连续的C.一定是不连续的D.连续不连续都可以2.在单链表中,增加头结点的目的是为了( C )A.使单链表至少有一个结点B.表示表结点中首结点的位置C.方便运算的实现D.说明单链表是线性表的链式存储实现3.设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是e2、e4、e3、e6、e5、e1,则栈S的容量至少应是( B )A.2 B.3 C.4 D.54.树结构中,前驱结点与后继结点之间存在( B )关系。
A.一对一B.一对多C.多对一D.多对多5.堆栈的特性描述是( B )。
A.FIFO B.FILO C.FIFO和FILO D.FIFO或FILO6.队列的特性描述是( A )。
A.FIFO B.FILO C.FIFO和FILO D.FIFO或FILO7.下列数据结构中,是非线性结构的是( A )A.树B.堆栈C.队列D.循环队列8.设某个初始为空的容纳int型数据的堆栈进行了如下操作(每一步均未发生溢出):push(1)、push(3)、pop()、push(6)、push(1)、pop()、push(3)、push(8) 后,该堆栈中从栈顶到栈底的元素依次为( D )A.8 1 8 3 B.1 3 1 8 C.1 6 3 8 D.8 3 6 1二、判断题1.二叉树可以为空树。
(√)2.顺序表和链表都是线性表。
(√)3.线性表的长度是线性表占用的存储空间的大小。
(√)4.队列只能采用链式存储方式。
(×)5.由二叉树的先序序列和中序序列能唯一确定一棵二叉树。
(√)6.存在有偶数个结点的满二叉树。
(×)三、填空题1.数据结构是数据在计算机内的组成形式和相互关系。
2.二叉树的三种遍历方式分别为中序遍历、先序遍历和后序遍历。
3.深度为K的满二叉树共有2k-1 个结点。
4.N个顶点的无向图是完全图的条件是其边数为n ( n-1 ) / 2 。
四、名词解释1.ADT ADT是抽象数据类型的简称,指一个数学模型以及定义在该模型上的一组操作。
2.栈栈是限定仅在表尾进行插入或删除操作的线性表,具有先进后出(FILO)的特性。
3.队列队列是只允许在表的一端进行插入操作,而在另一端进行删除操作的线性表,具有先进先出(FIFO)的特性。
五.简答题1.分别写出下图所示二叉树的先序遍历、中序遍历和后序遍历序列中序遍历: F G C E H B D J I A L N P O Q M K 先序遍历: A B C F G E H D I J K L M N O P Q 后序遍历: G F H E C J I D B P Q O N M L K A 2.用邻接矩阵表示下图所示的拓扑(节点已标号)。
数据结构自测题2一.单项选择题1.设某个初始为空的容纳int 型数据的非循环队列进行了如下操作(每一步均未发生溢出):inqueue(1)、inqueue (3)、dequeue()、inqueue (6)、inqueue (1)、dequeue()、inqueue (3)、inqueue (8) 后,该队列中从队尾到队首的元素依次为( C )A .1 6 3 8B .6 1 3 8C .8 3 1 6D .8 3 6 12.最多3个结点的二叉树共有(A )种不同的形态(不区分结点)。
A .5 B .4 C .3 D .23.串的长度是( D ) A .串中不同字符的数目AB C D E F GHIJ K LMNO PQ1 0 0 1 1 0 1 1 0 0 1 0 0 1 0 1 0 0 0 1 0 1 0 0B.串中不同字母的数目C.串中所含单词的数目D.串中所含字符的数目4.树的度规定为(D)A结点度之和B结点度的平均值C结点度的最小值D.结点度的最大值5.线性表的顺序存储结构是一种(A)存取的存储结构。
A.顺序B.随机C.索引D.散列6.在单向链表的第i个结点前插入新结点时,需预先保留的结点指针是(A )D.无需保留A.指向i结点的指针B.指向i结点的前趋结点的指针C.指向i结点的后继结点的指针设7.一个栈的进栈序列是ABCD,在进栈过程中允许出栈,且每个元素进栈出栈均各一次,则不可能得到的出栈序列是( D )。
A.ABDC B.DCBA C.CDBA D.CDAB8.下列说法正确的是(B )。
A.冒泡排序算法不是稳定的B.快速排序是对冒泡排序的一种改进C.外部排序指对数据元素序列的整个排序过程都在计算机内存中进行的排序D.衡量内部排序算法和外部排序算法效率的方法是相同的二.判断题1.树是无圈的图。
(√)2.无向图中所有顶点的度数之和等于边数的两倍。
(√)3.在一棵二叉树中,第5层上的结点数最多为10个。
(×)4.栈允许在一端进行插入在另一端进行删除。
(×)5.冒泡排序是一种稳定的排序算法。
(√)三.填空题1.图是顶点和边的集合。
3.链式存储结构中的结点包括数据域和指针域。
2.构造Hash表中,处理冲突的办法有再哈希法、开放定址法、链地址法、以及建立一个公共溢出区等方法。
四.名词解释1.串串又成为字符串,是由零个和多个字符组成的有限序列。
2.排序排序时将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列。
五、简答题1.堆栈和队列都是特殊线性表,其特殊性是什么。
堆栈是只能从一边输入和输出数据的线性表,具有先进后出(FILO)的特性;队列是只能从一边输入,而从另一边输出的线性表,具有先进先出(FIFO)的特性。
2.简述与开放定址法相比,链地址法处理冲突有哪些优点。
与开放定址法相比,链地址法有如下几个优点:(1) 链地址法处理冲突简单,且无堆积现象。
(2) 由于链地址法各链表上结点空间是动态申请的,故它更适合于造表前无法确定表长的情况。
(3)开放定址法需装填因子a较小,链地址法中可取a>=1,故当结点规模较大时,链地址法比开放定址法更节省空间。
(4) 链地址法构造的散列表,删除结点的操作易于实现。
六、综合题1.(10分)已知某二叉树的前序序列为EBADCFHGI,中序序列为ABCDEFGHI,请给出二叉树的后序序列,并画出这棵树的拓扑。
后序序列为ACDBGIHFEEBA DCFH G2.(15分)已知一个无向图的顶点集为{V0,V1,…V7},其邻接矩阵如下所示:V0 0 1 0 1 1 0 0 0V1 1 0 1 0 1 0 0 0V2 0 1 00 0 1 0 0V3 1 0 0 00 0 1 0V4 1 1 0 0 00 1 0V5 0 0 1 0 0 00 0V6 0 0 0 1 1 0 0 1V7 0 0 0 0 0 0 1 0(2)画出该图的图形(1)给出从V0出发的深度优先、广度优先遍历序列深度优先序列 V0,V1,V2,V5,V4,V6,V3,V7 广度优先序列 V0 V1 V3 V4 V2 V6 V5 V7数据结构自测题3一.单项选择题1.对二叉排序树,使用( B )的遍历方式,可以获得对结点序列关键字的排序。
A.先序遍历B.中序遍历C.后序遍历D.层次遍历2.用数组表示线性表的优点是( C )。
A.便于插入和删除操作B.可以动态地分配存储空间C.便于随机存取D.不需要占用一片相邻的存储空间3.一棵二叉树的先序遍历次序为ABDGECFH ,中序遍历次序为DGBEAFHC ,则其后序遍历次序为( C )。
A.ACFHBEDG B.ABCDGHEF C.GDEBHFCA D.BEFCHAGD4.从未排序序列中选出最小的元素,并将其依次放入到已排序序列的一端的排序算法称为( C )。
A.插入排序B.交换排序C.选择排序D.快速排序5.下列有关树的概念错误的是( C )。
A.一棵树中只有一个无前驱的结点B.树至少有一个结点C.一棵树的度为树中各个结点的度数之和D.树是一种非线性结构6.在二叉树结点的先序序列、中序序列和后序序列中,所有叶子结点的先后顺序( B )。
A.都不相同B完全相同C先序和中序相同而与后序不同 D中序和后序相同,而与先序不同二.判断题1.折半查找适合于顺序存储的有序表。
(√)2.堆栈和队列是两种重要的非线性结构。
(×)3.满二叉树一定是完全二叉树。
(√)4.栈具先进先出特征。
(×)5.单链表从任何一个结点出发,都能访问到所有结点。
(×)6.一般树和二叉树的结点数目都可以为0。
(×)三.填空题1.在树结构里,有且仅有一个结点没有前驱,称为根。
非根结点有且仅有一个直接前驱,且存在一条从根到该结点的唯一路径。
2..一个无向图采用邻接矩阵存储方法,其邻接矩阵一定是一个对称矩阵。
3.四种基本的存储映象方法是顺序方法、链接方法、索引方法、散列方法。
四,名词解释1.内部排序内部排序指对数据元素序列的整个排序过程都是在计算机内存中进行的排序。
2.外部排序外部排序是指待排序的数据元素太多,不能同时存放在内存中,所以排序操作不仅要使用内存,而且还要使用外部存储器存储数据的排序。
五.综合题1.(10分)对于线性表(18,25,63,50,41,32,90,66)进行散列存储时,若选用H(K)=K%11作为散列函数,则分别计算:散列地址为0的元素的个数,散列地址为3的元素的个数,散列地址为8的元素的个数。
如果用一个长度为11的数组来存储散列后的数据,并假设采用线性探测再散列的方式进行冲突检测,试写出散列后的序列。
散列地址为0的元素有1个散列地址为3的元素有1 个散列地址为8的元素有2个散列后的序列:□66□□90□25□□□50□18□63□41□32。