安工大数据结构试卷(带完整答案)
数据结构考试题及答案
数据结构考试题及答案一、选择题(每题2分,共20分)1. 以下哪个不是线性数据结构?A. 数组B. 链表C. 树D. 图2. 在一个单链表中,删除一个节点的操作需要知道该节点的:A. 地址B. 值C. 索引D. 前驱节点的引用3. 栈(Stack)是一种:A. 线性表B. 树状结构C. 图结构D. 散列表4. 哈希表解决冲突最常用的方法是:A. 排序B. 链地址法C. 再散列D. 除留余数法5. 以下哪个排序算法是稳定的?A. 快速排序B. 冒泡排序C. 选择排序D. 堆排序二、简答题(每题10分,共30分)1. 简述数组和链表的区别。
2. 解释二叉搜索树的基本概念及其优势。
3. 什么是递归?请给出一个简单的递归算法例子。
三、计算题(每题25分,共50分)1. 给定一个无序数组,请写出一个时间复杂度为O(n log n)的排序算法,并说明其工作原理。
2. 描述如何使用队列来实现一个简单的文本编辑器的撤销和重做功能。
四、编程题(共30分)编写一个函数,该函数接受一个整数数组作为参数,返回数组中所有元素的和。
如果数组为空,返回0。
答案一、选择题1. 答案:C(树和图都是非线性结构)2. 答案:D(需要前驱节点的引用来删除节点)3. 答案:A(栈是一种后进先出的特殊线性表)4. 答案:B(链地址法是解决哈希冲突的常用方法)5. 答案:B(冒泡排序是稳定的排序算法)二、简答题1. 数组和链表的区别:- 数组是连续的内存空间,链表是非连续的。
- 数组的索引访问速度快,链表需要遍历。
- 数组的大小固定,链表动态可变。
2. 二叉搜索树的基本概念及其优势:- 二叉搜索树是一种特殊的二叉树,左子树上所有节点的值小于它的根节点的值,右子树上所有节点的值大于它的根节点的值。
- 优势:支持快速的查找、插入和删除操作。
3. 递归是函数自己调用自己的过程。
例如,计算n的阶乘的递归算法: ```cint factorial(int n) {if (n <= 1) return 1;return n * factorial(n - 1);}```三、计算题1. 快速排序算法:- 选择一个元素作为“基准”(pivot)。
2022年安徽工业大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)
2022年安徽工业大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、下列排序算法中,占用辅助空间最多的是()。
A.归并排序B.快速排序C.希尔排序D.堆排序2、无向图G=(V,E),其中:V={a,b,c,d,e,f},E={(a,b),(a, e),(a,c),(b,e),(c,f),(f,d),(e,d)},对该图进行深度优先遍历,得到的顶点序列正确的是()。
A.a,b,e,c,d,fB.a,c,f,e,b,dC.a,e,b,c,f, dD.a,e,d,f,c,b3、某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。
A.单链表B.仅有头指针的单循环链表C.双链表D.仅有尾指针的单循环链表4、最大容量为n的循环队列,队尾指针是rear,队头:front,则队空的条件是()。
A.(rear+1)MOD n=frontB.rear=frontC.rear+1=frontD.(rear-1)MOD n=front5、有六个元素6,5,4,3,2,1顺序入栈,下列不是合法的出栈序列的是()。
A.543612B.453126C.346521D.2341566、下列叙述中,不符合m阶B树定义要求的是()。
A.根结点最多有m棵子树 B.所有叶结点都在同一层上C.各结点内关键字均升序或降序排列 D.叶结点之间通过指针链接7、排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一趟排序。
下列排序方法中,每一趟排序结束时都至少能够确定一个元素最终位置的方法是()。
Ⅰ.简单选择排序Ⅱ.希尔排序Ⅲ.快速排序Ⅳ.堆排Ⅴ.二路归并排序A.仅Ⅰ、Ⅲ、Ⅳ B.仅Ⅰ、Ⅱ、Ⅲ C.仅Ⅱ、Ⅲ、Ⅳ D.仅Ⅲ、Ⅳ、Ⅴ8、下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序()。
A.二叉排序树B.哈夫曼树C.AVL树D.堆9、一棵哈夫曼树共有215个结点,对其进行哈夫曼编码,共能得到()个不同的码字。
数据结构试题及答案(十套)
一、单选题(每题 2 分,共20分)1.对一个算法的评价,不包括如下(B )方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行( )。
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.对线性表,在下列哪种情况下应当采用链表表示?( )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35.AOV网是一种()。
A.有向图B.无向图C.无向无环图D.有向无环图6.采用开放定址法处理散列表的冲突时,其平均查找长度()。
A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.若需要利用形参直接访问实参时,应将形参变量说明为()参数。
A.值B.函数C.指针D.引用8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的()。
A.行号B.列号C.元素值D.非零元素个数9.快速排序在最坏情况下的时间复杂度为()。
A.O(log2n) B.O(nlog2n)C.0(n) D.0(n2)10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A. O(n)B. O(1)C. O(log2n)D. O(n2)二、运算题(每题 6 分,共24分)1.数据结构是指数据及其相互之间的______________。
当结点之间存在M对N (M:N)的联系时,称这种结构为_____________________。
(完整版)数据结构试题及答案
(完整版)数据结构试题及答案《数据结构》⾃考复习思考试题○10⼀、单项选择题(本⼤题共15⼩题,每⼩题2分,共30分)在每⼩题列出的四个备选项中只有⼀个是符合题⽬要求的,请将其代码填写在题后的括号内。
错选、多选或未选均⽆分。
1. 若将数据结构形式定义为⼆元组(K,R),其中K是数据元素的有限集合,则R是K上( ) A. 操作的有限集合 B. 映象的有限集合C. 类型的有限集合D. 关系的有限集合2. 在长度为n的顺序表中删除第i个元素(1≤i≤n)时,元素移动的次数为( )A. n-i+1B. iC. i+1D. n-i3. 若不带头结点的单链表的头指针为head,则该链表为空的判定条件是( )A. head==NULLB. head->next==NULLC. head!=NULLD. head->next==head4. 引起循环队列队头位置发⽣变化的操作是( )A. 出队B. ⼊队C. 取队头元素D. 取队尾元素5. 若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进⾏,则不.可能出现的出栈序列是( )A. 2,4,3,1,5,6B. 3,2,4,1,6,5C. 4,3,2,1,5,6D. 2,3,5,1,6,46. 字符串通常采⽤的两种存储⽅式是( )A. 散列存储和索引存储B. 索引存储和链式存储C. 顺序存储和链式存储D. 散列存储和顺序存储7. 设主串长为n,模式串长为m(m≤n),则在匹配失败情况下,朴素匹配算法进⾏的⽆效位移次数为( )A. mB. n-mC. n-m+1D. n8. ⼆维数组A[12][18]采⽤列优先的存储⽅法,若每个元素各占3个存储单元,且第1个元素的地址为150,则元素A[9][7]的地址为( )A. 429B. 432.C. 435D. 4389. 对⼴义表L=((a,b),(c,d),(e,f))执⾏操作tail(tail(L))的结果是( )A. (e,f)B. ((e,f))C. (f)D. ( )10. 下列图⽰的顺序存储结构表⽰的⼆叉树是( )11. n个顶点的强连通图中⾄少含有( )A. n-1条有向边B. n条有向边C. n(n-1)/2条有向边D. n(n-1)条有向边12. 对关键字序列(56,23,78,92,88,67,19,34)进⾏增量为3的⼀趟希尔排序的结果为( )A. (19,23,56,34,78,67,88,92)B. (23,56,78,66,88,92,19,34)C. (19,23,34,56,67,78,88,92)D. (19,23,67,56,34,78,92,88)13. 若在9阶B-树中插⼊关键字引起结点分裂,则该结点在插⼊前含有的关键字个数为( ) A. 4 B. 5C. 8D. 914. 由同⼀关键字集合构造的各棵⼆叉排序树( )A. 其形态不⼀定相同,但平均查找长度相同B. 其形态不⼀定相同,平均查找长度也不⼀定相同C. 其形态均相同,但平均查找长度不⼀定相同.D. 其形态均相同,平均查找长度也都相同15. ISAM⽂件和VSAM⽂件的区别之⼀是( )A. 前者是索引顺序⽂件,后者是索引⾮顺序⽂件B. 前者只能进⾏顺序存取,后者只能进⾏随机存取C. 前者建⽴静态索引结构,后者建⽴动态索引结构D. 前者的存储介质是磁盘,后者的存储介质不是磁盘⼆、填空题(本⼤题共10⼩题,每空2分,共20分)16. 数据的逻辑结构在计算机存储器内的表⽰,称为数据的____________。
数据结构试题库及答案
数据结构试题库及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构通常使用()来存储。
A. 链表B. 栈C. 队列D. 数组答案:D2. 以下哪个算法不是排序算法?A. 快速排序B. 归并排序C. 深度优先搜索D. 堆排序答案:C3. 在二叉树的遍历算法中,先访问根节点,然后遍历左子树,最后遍历右子树的遍历方式是()。
A. 先序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:A4. 哈希表的冲突解决方法不包括以下哪种?A. 链地址法B. 线性探测法C. 二分查找法D. 再散列法答案:C5. 在图的遍历算法中,广度优先搜索(BFS)使用的辅助数据结构是()。
A. 栈B. 队列C. 堆D. 链表答案:B6. 下列关于堆的描述中,错误的是()。
A. 堆是一种特殊的完全二叉树B. 堆中的每个节点的值都大于其子节点的值C. 堆可以用于实现优先队列D. 堆的插入操作的时间复杂度为O(log n)答案:B7. 在一个长度为n的数组中,使用二分查找算法查找一个元素的最坏情况下的时间复杂度是()。
A. O(1)B. O(n)C. O(n^2)D. O(log n)答案:D8. 以下哪个数据结构不是线性结构?A. 链表B. 栈C. 队列D. 二叉树答案:D9. 以下哪个算法是动态查找表?A. 直接索引B. 顺序查找C. 二分查找D. 哈希表答案:D10. 在图的表示方法中,邻接矩阵表示法的缺点是()。
A. 占用空间大B. 占用空间小C. 插入和删除操作复杂D. 遍历操作复杂答案:A二、填空题(每题2分,共20分)1. 在一个长度为n的数组中,使用顺序查找算法查找一个元素的时间复杂度为________。
答案:O(n)2. 一个具有n个节点的完全二叉树的高度为________。
答案:log2(n) + 1(向上取整)3. 一个长度为n的链表,删除一个节点的时间复杂度为________。
答案:O(1)4. 在图的表示方法中,邻接表表示法的缺点是________。
数据结构试题及答案(10套最新)
数据结构试题及答案(10套最新)数据结构试题及答案(10套最新)第一套试题:问题一:什么是数据结构?数据结构的作用是什么?回答:数据结构是一种组织和存储数据的方式,它关注数据元素之间的关系以及对数据元素的操作。
数据结构的作用包括提供高效的数据存储和访问方式,减少资源消耗,简化问题的解决方法,提高算法的性能和程序的可读性。
问题二:请列举几种常见的线性数据结构,并简要介绍它们的特点。
回答:常见的线性数据结构包括数组、链表和栈。
数组是一种连续存储数据元素的结构,具有随机访问的特点;链表是一种通过指针相连的数据元素,可以灵活地插入和删除元素;栈是一种遵循先进后出原则的数据结构,常用于解决递归问题。
问题三:请说明二叉树的定义及其性质。
回答:二叉树是一种特殊的树形数据结构,每个节点最多有两个子节点。
二叉树具有以下性质:每个节点最多有两个子节点,分别称为左子节点和右子节点;左子树和右子树都是二叉树;二叉树的节点个数为n,边的个数为n-1。
问题四:在数组中查找一个元素的时间复杂度是多少?为什么?回答:在数组中查找一个元素的时间复杂度是O(n),其中n是数组的长度。
因为在数组中查找元素需要按照索引一个一个比较,最坏情况下需要比较n次才能找到目标元素。
问题五:请解释堆排序算法的原理及时间复杂度。
回答:堆排序算法利用堆这种数据结构进行排序。
首先将待排序的元素构建成一个大顶堆,然后将堆顶元素与最后一个元素交换,继续调整堆,再取出堆顶元素与倒数第二个元素交换,依次执行,最后得到从小到大排序的序列。
堆排序的时间复杂度为O(nlogn)。
第二套试题:问题一:请解释图的邻接矩阵和邻接表表示法。
回答:图的邻接矩阵表示法是使用二维数组来表示图的连接关系,数组中的元素表示相应节点之间的边的关系。
邻接表表示法使用链表来表示图的连接关系,链表中的元素表示相邻节点之间的边的关系。
问题二:请说明深度优先搜索算法的原理及其应用。
回答:深度优先搜索(DFS)算法是一种遍历或搜索图的算法,其原理是从起始节点开始,依次深入到尽可能远的节点,直到无法继续深入为止,然后回溯到上一个节点,再继续深入其他未访问过的节点。
安徽工业大学工商学院数据结构2011试卷A(储岳中)
7、广义表( a, ( b ), ( ( c ) ) )的表尾是()
A) ( ( c ) ) B) ( ( ( c ) ) )C) ( c ) D) ( ( b ), ( ( c ) ) )
8、下面关于串的叙述中,哪一个是不正确的()
A)串是字符的有限序列B)空串是由空格构成的串
{ datatype data;
struct node *next;
}LNode , *LinkList;
2.编写一个建立二叉树的算法,要求采用二叉链表存储结构。(8分)
二叉树结点类型:
typedef struct bnode
{ datatype data;
struct bnode *lchild, *rchild;
二、填空题(每空1分,共12分)
1.通常是以算法执行所耗费的和所占用的来判断一个算法的优劣。
2.已知二维数组A[10][20]采用行序优先方式存储,每个元素占2个存储单元。并且A[0][0]的存储地址是1024,则A[6][18]的地址是
3.用带头结点的循环链表表示的队列,若只设尾指针rear,则队空的条件是。
C)模式匹配是串的重要运算D)串既可顺序存储,也可采用链式存储
9、在单链表中,指针p指向元素为x的结点,实现“删除x的后继”的语句是()
A)p=p->next;B)p->next=p->next->next;
C)p->next=p;D)p=p->next->next;
10、已知一组关键字为{25,48,36,72,79,82,23,40,16,35},其中每相邻两个为有序子序列。对这些子序列进行一趟两两归并的结果是()
(完整版)数据结构试题及答案
数据结构试卷(一)王彬一、单选题(每题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进制表示。
cA.688 B.678 C.692 D.6965.树最适合用来表示( )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( d ).A.2k-1 B.2K+1 C.2K-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.对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的元素有( c d)个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:____ ____、________、________和_______。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
数据结构试题(含答案)
数据结构试题(含答案)数据结构试题(含答案)一、选择题1. 数据结构是计算机科学中的一个重要概念。
下列选项中,不属于数据结构的是:A. 数组B. 栈C. 数据库D. 链表答案:C2. 在数据结构中,栈(Stack)是一种后进先出(LIFO)的数据结构。
下列操作中,不属于栈的是:A. 入栈B. 出栈C. 遍历D. 清空栈答案:C3. 链表(Linked List)是一种常见的数据结构,它由一系列节点组成,每个节点包含两个部分:数据和指向下一个节点的指针。
下列选项中,不属于链表的是:A. 单链表B. 双链表C. 循环链表D. 二叉树答案:D4. 哈希表(Hash Table)是一种根据关键码直接访问存储位置的数据结构。
下列选项中,不属于哈希表的优点是:A. 快速查找B. 插入和删除操作效率高C. 数据无序D. 冲突较少答案:C二、填空题1. 树(Tree)是一种非线性数据结构,它由一组以边连接的节点组成。
树中每个节点最多可以有________个子节点。
答案:无限制/任意个2. 图(Graph)是由节点和连接节点的边组成的数据结构。
图中节点的度是指与该节点相连接的边的________。
答案:数量3. 广度优先搜索(BFS)和深度优先搜索(DFS)是常用的图遍历算法。
在BFS中,使用________结构来保存待访问的节点。
答案:队列4. 在二叉搜索树(Binary Search Tree)中,左子树中的每个节点的值都小于根节点的值,右子树中的每个节点的值都大于根节点的值。
这种特性称为_______________。
答案:二叉搜索树性质三、简答题1. 请简要说明线性数据结构和非线性数据结构的区别。
答案:线性数据结构是指数据元素之间存在一对一的线性关系,例如数组、栈、队列等;而非线性数据结构是指数据元素之间存在一对多或多对多的关系,例如树、图等。
线性数据结构的存储方式是连续的,非线性数据结构的存储方式是离散的。
数据结构考试试题及答案
数据结构考试试题及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构通常使用什么类型的数据结构来实现?A. 栈B. 队列C. 数组D. 链表答案:C2. 下列选项中,哪一个不是二叉树的性质?A. 任意节点的左子树和右子树的深度可能不同B. 任意节点的左子树和右子树的深度相同C. 任意节点的左子树和右子树的节点数可能不同D. 任意节点的左子树和右子树的节点数相同答案:B3. 哈希表的冲突解决方法不包括以下哪种?A. 开放定址法B. 链地址法C. 线性探测法D. 排序法答案:D4. 以下哪种排序算法的时间复杂度最低?A. 冒泡排序B. 快速排序C. 插入排序D. 归并排序答案:B5. 在图的遍历算法中,深度优先搜索(DFS)使用的栈是:A. 系统栈B. 显式栈C. 隐式栈D. 以上都不是答案:B6. 以下哪种数据结构可以有效地实现稀疏矩阵的存储?A. 顺序存储B. 链表C. 散列D. 邻接矩阵答案:C7. 在二叉搜索树中,插入一个新节点后,树的平衡因子可能为:A. -2B. 0C. 2D. 3答案:A8. 堆数据结构中,父节点的值总是大于其子节点的值,这种堆被称为:A. 最小堆B. 最大堆C. 完全二叉树D. 满二叉树答案:B9. 以下哪个算法不是动态查找表的算法?A. 直接查找B. 二分查找C. 斐波那契查找D. 哈希查找答案:A10. 在图的遍历算法中,广度优先搜索(BFS)使用的栈是:A. 系统栈B. 显式栈C. 隐式栈D. 以上都不是答案:C二、填空题(每题2分,共20分)1. 在数据结构中,栈是一种______结构,遵循后进先出(LIFO)的原则。
答案:线性2. 一个具有n个顶点的无向图的边数最多为______。
答案:n*(n-1)/23. 快速排序算法的时间复杂度在最坏情况下为______。
答案:O(n^2)4. 在哈希表中,如果一个关键字的哈希地址已经被占用,则需要进行______。
大学数据结构期末考试试题(有答案)
大学数据结构期末考试试题(有答案)大学数据结构期末考试试题(有答案)题一:单项选择题(共10题,每题2分,共20分)1. 数据结构是一种()。
A. 算法B. 数据的存储结构C. 编程语言D. 操作系统答案:B2. 下列哪个不属于线性结构?A. 数组B. 栈C. 队列D. 树答案:D3. 栈是()的一种典型应用。
A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:C4. 链表与数组的主要区别是()。
A. 链表是动态分配的,数组是静态分配的B. 链表只能存储整数,数组可以存储任意类型的数据C. 链表的访问速度比数组快D. 链表的插入和删除操作比数组快答案:A5. 在二分查找算法中,查找元素的平均时间复杂度是()。
A. O(n)B. O(logn)C. O(n^2)D. O(1)答案:B6. 以下哪种排序算法不是稳定的?A. 冒泡排序B. 快速排序C. 插入排序D. 归并排序答案:B7. 平衡二叉树的插入和删除操作的时间复杂度都是()。
A. O(n)B. O(logn)C. O(n^2)D. O(1)答案:B8. 哈希表是通过()实现的。
A. 数组B. 链表C. 树D. 图答案:A9. 拓扑排序是一种用来解决()问题的算法。
A. 最短路径B. 最小生成树C. 最大流D. 有向无环图的排序答案:D10. 图的深度优先遍历算法使用()来实现。
A. 栈B. 队列C. 数组D. 链表答案:A题二:填空题(共5题,每题4分,共20分)1. 顺序表中元素的逻辑顺序与物理位置相同,插入和删除操作会引起元素的()。
答案:移动位置2. 在树的孩子兄弟表示法中,每个结点有两个指针,一个指向它的(),一个指向它的()。
答案:第一个孩子,下一个兄弟3. 哈希表的存储时间和查找时间都为()。
答案:O(1)4. 无向连通图的最小生成树边数为()。
答案:n-1(n为结点个数)5. 平衡二叉树的定义是任意结点的左子树和右子树的高度差不超过()。
大学数据结构期末考试试题(有答案)
“数据结构”期末考试试题一、单选题(每小题2分,共12分)1.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )。
A. HL=ps p一>next=HLB. p一>next=HL;HL=p3C. p一>next=Hl;p=HL;D. p一〉next=HL一>next;HL一〉next=p;2.n个顶点的强连通图中至少含有( ).A。
n—l条有向边 B.n条有向边C.n(n—1)/2条有向边 D。
n(n一1)条有向边3。
从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A。
O(1) B。
O(n)C.O(1Ogzn)D.O(n2)4.由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为()。
A.24 B.48C. 72 D. 535.当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( )参数,以节省参数值的传输时间和存储参数的空间。
A.整形B.引用型C.指针型D.常值引用型·6.向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为( )。
A.O(n) B.O(1)C.O(n2) D.O(10g2n)二、填空题(每空1分,共28分)1.数据的存储结构被分为——、——、-—和—-四种。
2.在广义表的存储结构中,单元素结点与表元素结点有一个域对应不同,各自分别为——域和——域。
3.-—中缀表达式 3十x*(2。
4/5—6)所对应的后缀表达式为———-。
4.在一棵高度为h的3叉树中,最多含有——结点。
5.假定一棵二叉树的结点数为18,则它的最小深度为—-,最大深度为-—·6.在一棵二叉搜索树中,每个分支结点的左子树上所有结点的值一定——该结点的值,右子树上所有结点的值一定-—该结点的值。
7.当向一个小根堆插入一个具有最小值的元素时,该元素需要逐层—-调整,直到被调整到——位置为止.8.表示图的三种存储结构为——、——和-——.9.对用邻接矩阵表示的具有n个顶点和e条边的图进行任一种遍历时,其时间复杂度为-—,对用邻接表表示的图进行任一种遍历时,其时间复杂度为—-。
数据结构考试试题及答案
数据结构考试试题及答案一、选择题(每题2分,共60分)1. 数据结构是指()。
A. 用来存储和组织数据的方式和方法B. 构建数据的逻辑关系C. 存储和处理数据的工具和技术D. 对数据进行操作和管理的过程2. 下列哪种数据结构是线性结构()。
A. 树B. 图C. 队列D. 堆3. 下列哪种数据结构是非线性结构()。
A. 栈B. 队列C. 数组D. 树4. 栈是一种()。
A. 先进先出的数据结构B. 先进后出的数据结构C. 后进先出的数据结构D. 后进后出的数据结构5. 在二叉树中,每个节点最多有几个孩子节点()。
A. 0B. 1C. 2D. 36. 下列哪种排序算法的时间复杂度最好()。
A. 冒泡排序B. 插入排序C. 快速排序D. 归并排序7. 哈希表的查找时间复杂度是()。
A. O(1)B. O(logn)C. O(n)D. O(nlogn)8. 链表的插入和删除操作时间复杂度是()。
A. O(1)B. O(logn)C. O(n)D. O(nlogn)9. 广度优先搜索算法一般使用()数据结构来实现。
A. 栈B. 队列C. 堆D. 树10. 什么是递归()。
A. 函数调用自身的过程B. 通过循环完成的过程C. 一种数据结构D. 没有调用其他函数的过程二、填空题(每题2分,共20分)1. 数据结构中,线性表是由一系列 _______________ 元素构成的数据结构。
2. 在树结构中,每个节点可以有 _______________ 个子节点。
3. 在图结构中,节点之间的关系可以用 _______________ 来表示。
4. _______________ 是一种递归定义的数据结构,它由若干个节点组成,每个节点都有零个或多个子节点。
5. 在堆排序中,堆是一种 _______________ 数据结构。
6. _______________ 是一种常用的搜索算法,常用于解决最短路径问题。
7. 在散列表中,使用 _______________ 来解决冲突问题。
安工大数据结构试卷(带完整答案).doc
个空指针域。
3.设输入序列为1、2、3,则经过栈的作用后可以得到__5种不同的输出序列。
4.设哈夫曼树中共有99个结点,则该树中有50个若采用二叉链表作为存储结构,则该树中有__100___个空指针域。
答:见三、4图
5.设一棵二叉树的先序序列为ABDGECFH,中序序列为:DGBAECHF。试画出该二叉树。(6分)
答:见三、5图
四、判断题(1*10'=10分)
1、顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。(错)
2、两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。。(对)
{
r=q;
r->next=p->next; p->next=r; q=q->next;
}
else
{
p=p->next; q=q->next;
}
if (!p&&q)
P=q;
return A;
}
2、试编写算法计算二叉树中度为1的结点数。(9分)
int count (bintree t) /*求二叉链表结构二叉树t度为1的结点数*/
答:int count (bintree t)
{
int count=0;
PSeqStack S; bintree p=t;
5.设一棵完全二叉树的顺序存储结构中存储数据元素为ABCDEF,则该二叉树的中序遍历序列为DBEAFCo
课程班级姓名学号
工 业 大 学 试 题 纸(二)
数据结构试题集(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、研究数据结构就是研究( 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<m;i++)for(j=0;j<n;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、下面程序段的时间复杂度是(A )。
i=s=0;while(s<n){i++;s+=i;}A. O(n)B. O(n2)C. O(log2n)D. O(n3)11、抽象数据类型的三个组成部分分别为( A)。
A. 数据对象、数据关系和基本操作B. 数据元素、逻辑结构和存储结构C. 数据项、数据元素和数据类型D. 数据元素、数据结构和数据类型12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是()。
安徽工业大学861数据结构2008、2014-2015计算机考研真题汇编
2014年全国硕士研究生入学考试招生单位自命题科目A卷861(A卷)第1 页,共3 页安徽工业大学2014年硕士研究生招生专业基础课试卷(A卷)科目名称:数据结构科目代码: 861 满分: 150分考生请注意:所有答案必须写在答题纸上,做在试题纸或者草稿纸上的一律无效!一、在下面每小题选择一个最佳答案(每小题2分,共40分)1、下列序列中,_________是堆。
A)(100,80,55,60,50,40,58,35,20) B) (100,80,55,60,50,40,35,58,20) C)(100,80,55,58,50,40,60,35,20) D)(100,70,55,60,50,40,58,35,20) 2、最短路径的Floyd算法的时间复杂度为______。
A) O(n) B) O(n+e) C) O(n2) D)O(n3)3、线性表若采用链表存储结构时,要求内存中可用存储单元的地址。
A)必须是不连续的 B)必须是连续的C)连续与否都可以 D)部分地址必须是连续的4、设F是一个森林,B是由F转换得到的二叉树,F中有n个非终端结点,B中右指针域为空的结点有个。
A) n-1 B) n C) n+1 D) n+25、一个图中包含k个连通分量,若按深度优先(DFS)搜索方法访问所有结点,则必须用次深度优先遍历算法。
A)k B)1 C)k-1 D)k+16、表达式a*(b+c)-d的后缀表达式是。
A)abcd*+- B)abc+*d- C)abc*+d- D)-+*abcd7、采用邻接表存储的图的深度优先遍历算法类似于二叉树的算法。
A)先序遍历 B)中序遍历 C)后序遍历 D)按层遍历8、初始序列已经有序,用直接插入排序算法进行排序,需要比较的次数为。
A)n2 B)3(n-1) C)n-1 D)n9、二叉树在线索化后,下列问题中相对较难解决的是。
A)先序线索二叉树中求先序后继 B)中序线索二叉树中求中序后继C)中序线索二叉树中求中序前趋 D)后序线索二叉树中求后序后继10、已知表A中每个元素距其最终位置不远,采用方法最节省时间。
数据结构试题及答案(十套)
数据结构试题及答案(十套)数据结构试题及答案(十套)一、选择题1. 数据结构是指()。
A. 存储数据的方式B. 数据的逻辑结构和物理结构C. 数据的存储结构和存储方式D. 数据的逻辑结构、存储结构和存储方式答案:D2. 在数据结构中,线性表的存储方式包括()。
A. 顺序存储和链式存储B. 数组存储和链表存储C. 顺序存储、链表存储和索引存储D. 顺序存储、链表存储和树形存储答案:A3. 栈是一种()的数据结构。
A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:C4. 队列是一种()的数据结构。
A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:A5. 二叉树中,度为0的节点称为()。
A. 叶子节点B. 根节点C. 中间节点D. 子节点答案:A6. 以下哪个排序算法是稳定的?A. 快速排序B. 选择排序C. 插入排序D. 希尔排序答案:C7. 图中表示顶点之间关系的边的数量称为()。
A. 顶点度数B. 边数C. 路径数D. 网络答案:B8. 哈希表通过()来实现高效的查找操作。
A. 散列函数B. 排序算法C. 遍历操作D. 顺序存储答案:A9. 平衡二叉树是一种具有左右子树高度差不超过()的二叉树。
A. 0B. 1C. 2D. 3答案:B10. 在链表中,删除节点的操作时间复杂度是()。
A. O(1)B. O(logn)C. O(n)D. O(nlogn)答案:A二、填空题1. 在顺序存储结构中,元素之间的逻辑关系由()表示。
答案:下标2. 二叉查找树的中序遍历结果是一个()序列。
答案:递增3. 哈希表通过散列函数将关键字映射到()上。
答案:地址4. 图的邻接表中,每个顶点的所有邻接点链接成一个()。
答案:链表5. 位运算符中的左移和右移运算都是对二进制数进行()操作。
答案:移位三、解答题1. 简要介绍顺序存储和链式存储这两种线性表的存储方式,并比较它们的优缺点。
答案:顺序存储是将元素按照逻辑顺序依次存储在一块连续的存储空间中,通过元素的下标可以直接访问到元素。
数据结构考试专用附带完整答案
数据结构考试专用附带完整答案数据结构是计算机科学中重要的一门基础课程,它研究的是组织和管理数据的方法。
在计算机程序设计和算法分析中,数据结构的选择直接影响到程序的效率和性能。
因此,对于计算机科学专业的学生来说,掌握数据结构并获得优异的成绩至关重要。
本文将为您提供数据结构考试专用附带完整答案,以帮助您更好地备考。
一、选择题1. 在数据结构中,最基本的数据操作是:A. 插入B. 查找C. 删除D. 以上皆是答案:D2. 以下不属于线性结构的是:A. 数组B. 链表C. 栈D. 树3. 以下哪种数据结构具有"先进先出"的特点:A. 队列B. 栈C. 堆D. 数组答案:A4. 在树的遍历算法中,中序遍历的顺序是:A. 根节点-左子树-右子树B. 左子树-根节点-右子树C. 右子树-左子树-根节点D. 根节点-右子树-左子树答案:B5. 哈希表(散列表)的查找时间复杂度是:A. O(1)B. O(n)C. O(log n)D. O(n^2)二、填空题1. 二叉树的最大深度是____。
答案:log2(n+1)2. 链表的节点包括数据域和____域。
答案:指针/引用3. 栈的特点是先进后出,而队列的特点是____。
答案:先进先出4. 快速排序使用的分治策略中,选择的枢纽元一般是____。
答案:数组的第一个元素5. 广度优先搜索算法(BFS)利用____数据结构实现。
答案:队列三、简答题1. 请简要说明数组和链表的区别。
答案:数组和链表都是线性表的一种实现方式。
数组是一块连续的内存空间,可以根据索引快速访问元素,但插入和删除元素的效率较低。
链表通过指针将节点串联在一起,插入和删除元素的效率较高,但访问元素需要从头开始遍历链表,效率较低。
2. 请简述栈和队列的应用场景。
答案:栈常用于括号匹配、表达式求值和函数调用等场景,其中最典型的应用是函数调用的调用栈。
队列常用于任务调度、缓冲区管理等场景,例如操作系统中的进程调度和打印队列。
2022年安徽工业大学数据科学与大数据技术专业《计算机系统结构》科目期末试卷B(有答案)
2022年安徽工业大学数据科学与大数据技术专业《计算机系统结构》科目期末试卷B(有答案)一、选择题1、指令间“一次重叠”说法有错的是( )A.仅“执行k”与“分析k+1”重叠B."分析k”完成后立即开始“执行k”C.应尽量使“分析k+1”与“执行k”时间相等D.只需要一套指令分析部件和执行部件2、1TFLOPS计算机能力,1TBYTE/S的I/O带宽和()称为计算机系统的3T性能目标。
A,1TBYTE 硬盘容量B.1TBYTE 软盘容量C.1TBYTE 主存容量D.A和B3、计算机组成设计不考虑()A.专用部件设置B.功能部件的集成度C.控制机构的组成D.缓冲技术4、对机器语言程序员透明的是( )。
A.中断字B.主存地址寄存器C.通用寄存器D.条件码5、在多用户机器上,应用程序员不能使用的指令是()A.“执行”指令B.“访管”指令C.“启动IO”指令D“测试与置定”指令6、全相联地址映象是指()。
A.任何虚页都可装入主存中任何实页的位置B.一个虚页只装进固定的主存实页位置C.组之间是固定的,而组内任何虚页可以装入任何实页位置D.组间可任意装入,组内是固定装入7、系列机软件应做到( )。
A.向前兼容,并向上兼容B.向后兼容,力争向上兼容C.向前兼容,并向下兼容D.向后兼容,力争向下兼容8、最能确保提高虚拟存贮器访主存的命中率的改进途径是( )A.增大辅存容量B.采用FIFO替换算法并增大页面C.改用LRU替换算法并增大页面D.改用LRU替换算法并增大页面数9、浮点数尾数下溢处理时,最大误差最大,但下溢处理不需要时间,平均误差又趋于0的方法是( )。
A.截断法B.舍入法C.ROM查表法D.恒置"1"法10、块冲突概率最高的Cache地址映象方式是( )A.段相联B.组相联C.直接D.全相联二、填空题11、软件和硬件成本由________和________组成。
12、虚拟存贮器主要是为解决主存________满足不了要求发展出来的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6.设F和R分别表示顺序循环队列的头指针和尾指针,则判断该循环队列为空的条件为_______F==R______________。
7.设二叉树中结点的两个指针域分别为lchild和rchild,则判断指针变量p所指向的结点为叶子结点的条件是_______p->lchild==NULL&&p->rchild==NULL______________________________________。
5.设某棵三叉树中有40个结点,则该三叉树的最小高度为(B)。
(A) 3(B) 4(C) 5(D) 6
6.设某强连通图中有n个顶点,则该强连通图中至少有(C)条边。
(A) n(n-1)(B) n+1(C) n(D) n(n+1)
7.设有5000个待排序的记录关键字,如果需要用最快的方法选出其中最小的10个记录关键字,则用下列(B)方法可以达到此目的。
{
LinkList p,q,r;
p=A;
q=B->next;
while(p)
{
if(q->next->dtat<p->data)
{
r=q;
r->next=p->next;
p->next=r;
q=q->next;
}
else
{
p=p->next;
q=q->next;
}
if(!p&&q)
p=q;
return A;
1、顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。(错)
2、两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。。(对)
3、一个栈的输入序列是12345,则栈的输出序列不可能是12345。(错)
4、串是一种数据对象和操作都特殊的线性表。(对)
2.假定有字符a1,a2,a3,a4,a5在一篇文章中出现的次数分别为{{3, 2, 4, 5, 1}}试以它们为叶子结点构造哈夫曼树,并计算WPL (8分)
答:见三、2图
WPL=(3+4+5)*2+(1+2)*3=33
3.已知广义表L=(a,(b,c),(d,e)),试画出其存储结构图并利用取头函数head和取尾函数tail求出原子e。((6分)
答:见三、3图
e=head(tail(head(tail(tail(L))))
4.(共6分)设有下列带权无向图:
请用PRIM求该图的一棵最小生成树。
答:见三、4图
5.设一棵二叉树的先序序列为ABDGECFH,中序序列为:DGBAECHF。试画出该二叉树。(6分)
答:见三、5图
四、判断题(1*10`=10分)
10、在初始数据表已经有序时,快速排序算法的时间复杂度为O(nlog2n )。(错)
五、编写算法(28分)
1、试编写算法将两个有序的单链表归并成一个新的有序单链表。(10分)
linklist Merge(linklist A, linklist B) /*将有序单链表合并后由函数带回*/
答:LinkList Merge(LinkList A,LinkList B)
(A)动态结构和静态结构(B)紧凑结构和非紧凑结构
(C)线性结构和非线性结构(D)内部结构和外部结构
2.设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为(A)。
() BADC(B) BCDA(C) CDAB(D) CBDA
3.将10阶对称矩阵压缩存储到一维数组A中,则数组A的长度最少为(C)。
}
2、试编写算法计算二叉树中度为1的结点数。(9分)
int count(bintree t) /*求二叉链表结构二叉树t度为1的结点数*/
答:int count(bintree t)
{
int count=0;
PSeqStack S;
bintree p=t;
S=Init_SeqStack();
while(p||Empty_SeqStack(S))
1.已知8个待排序的记录,其关键码分别为53,36,30,91,47,12,24,85,用希尔排序、快速排序和堆排序对其进行排序,写出第一趟排序后结果。(9分)
答:希尔排序:12 24 30 91 47 53 36 85(步长为5)
快速排序:24 36 30 12 47 53 91 85
小堆排序:12 36 53 85 47 30 24 91
{
while(t)
{
if(t->key==X)
return t;
if(t->key<X)t=t->lchild;
else t=t->rchild;
}
return NULL;
}
三、2图
三、3图
三、4图
三、5图
11.平衡因子是指____左子树的深度减去右子树的深度____________________________________。
12.数组A[0..6,0..8]的每个元素占4个字节,将其按行优先次序存储在起始地址为2000的内存单元中,元素A[5,6]
的地址是_____2204________。
三、应用题。(共35分)
(A)快速排序(B)堆排序(C)归并排序(D)插入排序
8.若某线性表中最常用的操作是取第I个元素和找第I个元素的前趋元素,则采用(D)存储方式最节省时间。
(A)单链表(B)双链表(C)单向循环(D)顺序表
9.设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为(D)。
(A) n(B) e(C) 2n(D) 2e
………………………………装………………………………订…………………………………线………………………………
课程________________________班级________________________姓名__________________________学号________________________
{
if(p)
{
Push_SeqStack(S,p);
p=p->lichild;
}
else
{
Pop_SeqStack(S,&p);
if(((p->lchild!=NULL)&&(p->rchild==NULL))||((p->lchild==NULL)&&(p->rchild!=NULL)))
count++;
(A) 100(B) 40(C) 55(D) 80
4.设顺序循环队列Q[0:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为(C)。
(A) R-F(B) F-R(C) (R-F+M)%M(D) (F-R+M)%M
………………………………密………………………………封…………………………………线………………………………
题号
一
二
三
四
五
六
七
八
九
十
十一
十二
十三
十四
十五
十六
十七
十八
十九
二十
总分
得分
安徽工业大学2012~2013学年第二学期期末考试《数据结构》试卷(A)
一、单项选择题(110=10分)
1、在数据结构中,从逻辑上可以把数据结构分为(C)。
5、数组可看成线性结构的一种推广,因此与线性表一样,可以对它进行插入,删除等操作。(错)
6、对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2i-1个结点。(错)
7、最小代价生成树是唯一的。(错)
8、归并排序的空间复杂度为O(n)(对)
9、为了方便操作,一般在二叉树排序树中插入一个新结点,总是作为叶结点。(对)
3.设输入序列为1、2、3,则经过栈的作用后可以得到____5_______种不同的输出序列。
4.设哈夫曼树中共有99个结点,则该树中有____50_____个叶子结点;若采用二叉链表作为存储结构,则该树中有__100___个空指针域。
5.设一棵完全二叉树的顺序存储结构中存储数据元素为ABCDEF,则该二叉树的中序遍历序列为_____DBEAFC______。
8.简单选择排序和直接插入排序算法的平均时间复杂度为_____O(n^2)______。
9.快速排序算法的空间复杂度平均情况下为____O(log2n)______,最坏的情况下为____O(n^2)______。
10.散列表中解决冲突的两种方法是______开放地址法_______和___链地址法__________。
10.设有序表中有1000个元素,则用二分查找查找元素X最多需要比较(B)次。
(A) 25(B) 10(C) 7(D) 1
二、填空题(每空格1分,共17分)
1.数据的物理结构主要包括__连续存储结构____和___非连续存储结构____两种情况。
2.设一棵完全二叉树中有500个结点,则该二叉树的深度为_____9_____;若用二叉链表作为该完全二叉树的存储结构,则共有______501_____个空指针域。
p=p->rchild;
}
}
return count;
}
3、试编写算法在二叉排序树T中查找值为X的算法。(9分)
BinSTree BSTSearch (BinSTree t , KeyType X ,)/*二叉排序树T中查找值为X的算法*/