浙江理工大学数据结构与算法期末样卷 (1)

合集下载

浙江理工大学数据结构与算法期末样卷 (2)

浙江理工大学数据结构与算法期末样卷 (2)

模拟试卷二参考答案一、单选题(每题2分,共20分)1.B 2.B 3.A 4.C 5.D 6.A 7.C 8.C 9.D 10.D二、填空题(每空1分,共26分) 1.集合结构 线性结构 树结构 图结构 2. O(n) 3.O(1) O(1) 4.7 2 25. 94 3 X Y * + 2 Y * 3 / -6. 16 317.孩子(或子)结点 双亲(或父)结点 8. 45 n(n-1)9.(12,36) (17,5,49) (74,82) (63) 10.减少1(或减少) 11. O(log 2n) O(nlog 2n) 12. n/m三、 运算题(每题6分,共24分) 1.线性表为:(90,40,78,50,34,60)2. 当前序序列为ABKCDFGHIJ ,中序序列为KBCDAFHIGJ 时,逐步形成二叉树的过程如下图4所示:图4 3.用克鲁斯卡尔算法得到的最小生成树为:(1,6)1, (2,4)1, (2,5)2, (5,7)2, (2,6)3, (3,5)7 4.见图5。

图5四、 阅读算法(每题7分,共14分) 1. (1) La=(26,34,57,79,100)(2)La=(57,79,100,34) (3)La=(79,34,57,26,100) 2.前序遍历链式存储的二叉树。

五、算法填空(每空2分,共8 分)(low<=high) K==A[mid].key Binsch(A,mid+1,hight,K) return -1六、编写算法(8分)bool Find(LNode* HL, ElemType &item) {LNode* p=HL; while pif (p->data==item){ return true; }else p=p->next; return false; }。

数据结构期末考试题及答案

数据结构期末考试题及答案

数据结构期末考试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,算法的时间复杂度是指()。

A. 执行算法所需要的计算工作量B. 执行算法所需要的存储空间C. 执行算法所需要的时间D. 执行算法所需要的内存大小答案:A2. 线性表的顺序存储结构和链式存储结构相比,其优点是()。

A. 插入和删除操作快B. 存储密度高C. 存储空间可以动态分配D. 存储空间利用率高答案:B3. 栈的基本运算中,不包括()。

A. 入栈B. 出栈C. 取栈顶元素D. 排序答案:D4. 在二叉树的遍历中,先序遍历的顺序是()。

A. 先根后子B. 先子后根C. 先左后右D. 先右后左答案:A5. 哈希表解决冲突的方法不包括()。

A. 分离链接法B. 线性探测法C. 链地址法D. 二分查找法答案:D6. 一个图的邻接矩阵表示法中,若第i行第j列的元素为1,则表示()。

A. 顶点i和顶点j之间有一条边B. 顶点i和顶点j之间没有边C. 顶点i和顶点j之间有n条边D. 顶点i和顶点j之间有m条边答案:A7. 在查找算法中,二分查找法适用于()。

A. 线性表B. 哈希表C. 树形结构D. 图结构答案:A8. 快速排序算法的时间复杂度在最坏情况下是()。

A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C9. 一个有n个顶点的无向图,其边数最多为()。

A. nB. n(n-1)/2C. n(n+1)/2D. 2n答案:B10. 以下哪个不是排序算法()。

A. 冒泡排序B. 选择排序C. 插入排序D. 归并排序答案:D二、填空题(每题2分,共20分)1. 在数据结构中,一个算法的空间复杂度是指算法执行过程中所需要的___________。

答案:存储空间2. 线性表的链式存储结构中,每个节点包含___________和___________。

答案:数据元素,指针3. 栈的特点是___________,___________。

《数据结构》期末考试试卷试题及答案

《数据结构》期末考试试卷试题及答案

《数据结构》期末考试试卷试题及答案第一部分:选择题(每题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. 编写一个函数,实现链表的插入操作。

2022年浙大城市学院计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年浙大城市学院计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年浙大城市学院计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、哈希文件使用哈希函数将记录的关键字值计算转化为记录的存放地址,因为哈希函数是一对一的关系,则选择好的()方法是哈希文件的关键。

A.哈希函数B.除余法中的质数C.冲突处理D.哈希函数和冲突处理2、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储, a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为()。

A.13B.33C.18D.403、计算机算法指的是解决问题的步骤序列,它必须具备()三个特性。

A.可执行性、可移植性、可扩充性B.可执行性、确定性、有穷性C.确定性、有穷性、稳定性D.易读性、稳定性、安全性4、在用邻接表表示图时,拓扑排序算法时间复杂度为()。

A.O(n)B.O(n+e)C.O(n*n)D.O(n*n*n)5、有六个元素6,5,4,3,2,1顺序入栈,下列不是合法的出栈序列的是()。

A.543612B.453126C.346521D.2341566、若一棵二叉树的前序遍历序列为a,e,b,d,c,后序遍历序列为b, c,d,e,a,则根结点的孩子结点()。

A.只有e B.有e、b C.有e、c D.无法确定7、下列关于无向连通图特性的叙述中,正确的是()。

Ⅰ.所有的顶点的度之和为偶数Ⅱ.边数大于顶点个数减1 Ⅲ.至少有一个顶点的度为1A.只有Ⅰ B.只有Ⅱ C.Ⅰ和Ⅱ D.Ⅰ和Ⅲ8、已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历结果为()。

A.CBEFDAB.FEDCBAC.CBEDFAD.不定9、每个结点的度或者为0或者为2的二叉树称为正则二叉树。

n个结点的正则二叉树中有()个叶子。

A.log2nB.(n-1)/2C.log2n+1D.(n+1)/210、在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是()。

《数据结构》期末考试试卷试题及答案

《数据结构》期末考试试卷试题及答案

《数据结构》期末考试试卷试题及答案一、选择题(每题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)线性表:一个线性结构,其特点是数据元素之间存在一对一的线性关系。

数据结构期末考试试题(含答案)

数据结构期末考试试题(含答案)

数据结构期末考试试题(含答案)题目一请写出快速排序算法的递归实现。

解答一public class QuickSort {public void sort(int[] arr, int low, int high) {if (low < high) {int partitionIndex = partition(arr, low, high);sort(arr, low, partitionIndex - 1);sort(arr, partitionIndex + 1, high);}}private int partition(int[] arr, int low, int high) {int pivot = arr[high];int i = low - 1;for (int j = low; j < high; j++) {if (arr[j] <= pivot) {i++;swap(arr, i, j);}}swap(arr, i + 1, high);return i + 1;}private void swap(int[] arr, int i, int j) {int temp = arr[i];arr[i] = arr[j];arr[j] = temp;}}题目二请解释什么是二叉搜索树,并给出一个例子。

解答二二叉搜索树是一种有序的二叉树,其中每个节点的值大于其左子树的所有节点的值,小于其右子树的所有节点的值。

下面是一个二叉搜索树的例子:6/ \3 9/ \ \1 4 12题目三请写出深度优先搜索(DFS)算法的递归实现。

解答三import java.util.*;public class DFS {private int numVertices;private List<List<Integer>> adjList;public DFS(int numVertices) {this.numVertices = numVertices;adjList = new ArrayList<>();for (int i = 0; i < numVertices; i++) {adjList.add(new ArrayList<>());}}public void addEdge(int src, int dest) { adjList.get(src).add(dest);}public void DFSUtil(int start, boolean[] visited) { visited[start] = true;System.out.print(start + " ");List<Integer> neighbors = adjList.get(start);for (int neighbor : neighbors) {if (!visited[neighbor]) {DFSUtil(neighbor, visited);}}}public void DFS(int start) {boolean[] visited = new boolean[numVertices];DFSUtil(start, visited);}}以上是数据结构期末考试试题及其答案。

数据结构与算法分析—期末复习题及答案。。报告

数据结构与算法分析—期末复习题及答案。。报告

单选题(每题 2 分,共20分)1. 对一个算法的评价,不包括如下(B )方面的内容。

A.健壮性和可读性B.并行性C.正确性D.时空复杂度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. 对线性表,在下列哪种情况下应当采用链表表示?( B )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4. 一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 36. 若需要利用形参直接访问实参时,应将形参变量说明为(D )参数。

A.值B.函数C.指针D.引用8. 在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的(A )。

A.行号B.列号C.元素值D.非零元素个数10. 从二叉搜索树中查找一个元素时,其时间复杂度大致为(C )。

A. O(n)B. O(1)C. O(log2n)D. O(n2)二、运算题(每题6 分,共24分)1. 数据结构是指数据及其相互之间的_联系。

当结点之间存在M对N(M:N)的联系时,称这种结构为__图__。

2. 队列的插入操作是在队列的___尾_进行,删除操作是在队列的_首_进行。

3. 当用长度为N的数组顺序存储一个栈时,假定用top==N表示栈空,则表示栈满的条件是___top==0___(要超出才为满)_______________。

4. 对于一个长度为n的单链存储的线性表,在表头插入元素的时间复杂度为___ O(1)__,在表尾插入元素的时间复杂度为___ O(n)___。

浙江理工大学数据结构与算法期末样卷(1)

浙江理工大学数据结构与算法期末样卷(1)

浙江理工大学数据结构与算法期末样卷(1)模拟试卷二一、单选题(每题2分,共20分)1.在一个具有额外字段结点的单链表中hl中,若要向字段填入一个由指针p指向的结点,则继续执行()a.hl=p;p->next=hl;b.p->next=hl->next;hl->next=p;c.p->next=hl;p=hl;d.p->next=hl;hl=p;2.若顺序存储的循环队列的queuemaxsize=n,则该队列最多可以存储()个元素a.nb.n-1c.n+1d.不确定3.下列哪一条就是顺序存储方式的优点?()a.存储密度大b.插入和删除运算方便c.获取符合某种条件的元素方便d.查找运算速度快4.建有一个二维数组a[m][n],假设a[0][0]放置边线在600(10),a[3][3]放置边线在678(10),每个元素占到一个空间,问a[2][3](10)存放在什么边线?(注释(10)则表示用10十进制则表示,m>3)a.658b.648c.633d.6535.下列关于二叉树遍历的叙述中,正确的是()a.若一个树叶就是某二叉树的中序结点的最后一个结点,则它必就是该二叉树的前序结点最后一个结点b.若一个点是某二叉树的前序遍历最后一个结点,则它必是该二叉树的中序遍历的最后一个结点c.若一个结点就是某二叉树的中序结点的最后一个结点,则它必就是该二叉树的前序最后一个结点d.若一个树叶是某二叉树的前序最后一个结点,则它必是该二叉树的中序遍历最后一个结点6.k层二叉树的结点总数最多为()a.2k-1b.2k+1c.2k-1d.2k-17.对线性表展开二分法搜寻,其前提条件就是()a.线性表以链接方式存储,并且按关键码值排好序b.线性表以顺序方式存储,并且按关键码值的检索频率排好序c.线性表以顺序方式存储,并且按关键码值排好序d.线性表以链接方式存储,并且按关键码值的检索频率排好序8.对n个记录进行堆排序,所需要的辅助存储空间为()a.o(1og2n)b.o(n)c.o(1)d.o(n2)9.对于线性表(7,34,77,25,64,49,20,14)展开杂凑存储时,若采用h(k)=k%7做为杂凑函数,则杂凑地址为0的元素存有()个,a.1b.2c.3d.410.以下关于数据结构的描述中,恰当的就是()a.数组就是相同类型值的子集b.递归算法的程序结构比迭代算法的程序结构更为精炼c.树是一种线性结构d.用一维数组存储一棵全然二叉树就是有效率的存储方法二、填空题(每空1分,共26分)1.数据的逻辑结构被分成_________、________、__________和___________四种。

《数据结构》期末考试试题及答案

《数据结构》期末考试试题及答案

《数据结构》期末考试试题及答案一、选择题(每题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. 作为链表中的第一个元素答案:A3. 在顺序表中,插入一个元素的时间复杂度是()A. O(1)B. O(n)C. O(logn)D. O(n^2)答案:B4. 下列哪种排序算法的平均时间复杂度最高?A. 冒泡排序B. 快速排序C. 直接插入排序D. 希尔排序答案:C5. 在二叉树中,具有3个结点的二叉树有()种不同的形态。

A. 2B. 3C. 4D. 5答案:C6. 下列哪种情况不适合使用哈希表?A. 查找速度快B. 数据量较大C. 数据量较小D. 数据元素关键字分布均匀答案:C7. 在图的遍历过程中,下列哪种遍历方法属于深度优先遍历?A. 广度优先遍历B. 深度优先遍历C. 混合遍历D. 随机遍历答案:B8. 下列哪种数据结构不适用于实现栈?A. 顺序表B. 链表C. 树D. 图答案:C9. 在双向链表中,删除一个元素的时间复杂度是()A. O(1)B. O(n)C. O(logn)D. O(n^2)答案:A10. 下列哪种情况不适合使用队列?A. 数据元素先进先出B. 数据元素后进先出C. 数据元素随机进出D. 数据元素按顺序进出答案:B二、填空题(每题2分,共20分)1. 线性表是具有______个数据元素的有限序列。

答案:n2. 在单链表中,每个结点包含两个域:数据域和______域。

答案:指针3. 在顺序表中,插入一个元素的时间复杂度是______。

答案:O(n)4. 快速排序的平均时间复杂度为______。

答案:O(nlogn)5. 哈希表中的冲突指的是______。

答案:不同的关键字对应同一存储位置6. 在图的遍历过程中,深度优先遍历算法使用的数据结构是______。

数据结构期末测试题及答案

数据结构期末测试题及答案

绝密★启用前数据结构期末测试题一、单项选择题(每小题2,共30分)1、数据结构就是研究( D )。

A. 数据的逻辑结构B. 数据的存储结构C. 数据的逻辑结构和存储结构D. 数据的逻辑结构、存储结构及其基本操作2、若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素算法的时间复杂度()。

A. O(log2n)B.O(1)C. O(n)D.O(n2)3、非空的循环单链表head的尾结点p满足()。

A. p->next==headB. p->next==NULLC. p==NULLD. p==head4、在下列对顺序表进行的操作中,算法时间复杂度为O(1)的是()。

A. 访问第i个元素的前驱(1<ni≤) B. 在第i个元素之后插入一个新元素(ni1≤≤)C. 删除第i个元素(ni1≤≤) D. 对顺序表中元素进行排序5、一个栈的输入序列为:a,b,c,d,e,则栈的不可能输出的序列是()。

A. a,b,c,d,eB. d,e,c,b,aC. d,c,e,a,bD. e,d,c,b,a6、队列的插入操作是在()。

A. 队尾B. 队头C. 队列任意位置D. 队头元素后7、设有两个串S1和S2,求串S2在S1中首次出现位置的运算称作( C )。

A. 连接B. 求子串C. 模式匹配D. 判断子串8、空串和空格串( B )。

A. 相同B. 不相同C. 可能相同9、设广义表L=((a,b,c)),则L的长度和深度分别为( C )。

A. 1和1B. 1和3C. 1和2D. 2和310、采用稀疏矩阵的三元组表形式进行压缩存储,若要完成对三元组表进行转置,只要将行和列对换,这种说法( B )。

A. 正确B. 错误C. 无法确定D. 以上均不对11、二叉树的深度为k,则二叉树最多有( C )个结点。

A. 2kB. 2k-1C. 2k-1D. 2k-112、对于具有n个顶点的图,若采用邻接矩阵表示,则该矩阵的大小为()。

2022年浙江理工大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年浙江理工大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年浙江理工大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、无向图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,b2、下列说法不正确的是()。

A.图的遍历是从给定的源点出发每个顶点仅被访问一次B.遍历的基本方法有两种:深度遍历和广度遍历C.图的深度遍历不适用于有向图D.图的深度遍历是一个递归过程3、链表不具有的特点是()。

A.插入、删除不需要移动元素B.可随机访问任一元素C.不必事先估计存储空间D.所需空间与线性长度成正比4、循环队列A[0..m-1]存放其元素值,用front和rear分别表示队头和队尾,则当前队列中的元素数是()。

A.(rear-front+m)%mB.rear-front+1C.rear-front-1D.rear-front5、已知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7}, E={<V1,V2>,<V1,V3>,<V1,V4>,<V2,V5>,<V3,V5>, <V3,V6>,<V4,V6>,<V5,V7>,<V6,V7>},G的拓扑序列是()。

A.V1,V3,V4,V6,V2,V5,V7B.V1,V3,V2,V6,V4,V5,V7C.V1,V3,V5,V2,V6,V7D.V1,V2,V5,V3,V4,V6,V76、下列关于无向连通图特性的叙述中,正确的是()。

Ⅰ.所有的顶点的度之和为偶数Ⅱ.边数大于顶点个数减1 Ⅲ.至少有一个顶点的度为1A.只有Ⅰ B.只有Ⅱ C.Ⅰ和Ⅱ D.Ⅰ和Ⅲ7、已知关键字序列5,8,12,19,28,20,15,22是小根堆(最小堆),插入关键字3,调整后的小根堆是()。

数据结构期末考试题及答案

数据结构期末考试题及答案

数据结构期末考试题及答案一、单项选择题(每题3分,共30分)1. 在数据结构中,最基本的数据结构是()。

A. 线性结构B. 树形结构C. 图形结构D. 非线性结构答案:A2. 栈是一种特殊的线性表,其特点是()。

A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:C3. 在二叉树中,度为2的结点数为n,度为1的结点数为m,度为0的结点数为p,则m的值为()。

A. n-1B. n+1C. p-1D. p+1答案:A4. 哈希表的构造方式是()。

A. 线性结构B. 树形结构C. 链式结构D. 索引结构答案:D5. 在图的遍历过程中,深度优先搜索算法采用的是()。

A. 队列B. 栈C. 链表D. 树答案:B6. 快速排序算法的时间复杂度在最坏情况下是()。

A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C7. 以下哪个排序算法是不稳定的排序算法()。

A. 冒泡排序B. 快速排序C. 归并排序D. 堆排序答案:B8. 在数据库中,索引通常采用哪种数据结构()。

A. 线性表B. 树形结构C. 图形结构D. 散列表答案:B9. 以下哪个不是二叉搜索树的性质()。

A. 左子树上所有结点的值都小于它的根结点的值B. 右子树上所有结点的值都大于它的根结点的值C. 左、右子树也分别为二叉搜索树D. 所有结点的值都相等答案:D10. 在图的表示方法中,邻接矩阵适用于表示()。

A. 稠密图B. 稀疏图C. 有向图D. 无向图答案:A二、填空题(每题4分,共20分)1. 在数据结构中,一个算法的空间复杂度是指算法在执行过程中需要的___________。

答案:存储空间2. 堆排序中,调整堆的过程称为___________。

答案:堆化3. 在图的遍历中,广度优先搜索使用的辅助数据结构是___________。

答案:队列4. 一个长度为n的链表,删除第i个元素的时间复杂度是___________。

算法与数据结构试题与答案

算法与数据结构试题与答案

A.5
B.6
C.7
D.8
二、填空题(每空 1 分,共 26 分)
1. 通常从四个方面评价算法的质量: _________、 _________、 _________ 和_________。 2. 一个算法的时间复杂度为 (n3 +n 2log 2 n +14 n)/ n 2,其数量级表示为 ________。
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 进
素的前一位置,尾指针 R 总是指向队尾元素的当前位置,则该循环队列中的元素个数为
( )。
(A) R-F
(B) F-R
(C) (R-F+M) % M (D) (F-R+M) % M
4 .设某棵二叉树的中序遍历序列为 ABCD ,前序遍历序列为 CABD ,则后序遍历该二叉树
得到序列为( )。
(A) BADC
3. 假定一棵树的广义表表示为 A( C,D ( E,F , G),H ( I ,J )),则树中所含的结点数
为 __________ 个,树的深度为 ___________,树的度为 _________。
4. 后缀算式 9 2 3 +- 10 2 / - 的值为 __________。中缀算式( 3+4X ) -2Y/3 对应的后缀
else {
if (item==BST->data){

大学数据结构期末考试试题(有答案)

大学数据结构期末考试试题(有答案)

“数据结构”期末考试试题一、单选题(每小题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 —I条有向边B.n 条有向边C.n(n —1) /2条有向边D.n(n —1)条有向边3.从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为()。

A.0(1)B.O(n)C.O(1Ogzn)D.O(n2)4.由权值分别为3,8,6,2, 5的叶子结点生成一棵哈夫曼树,它的带权路径长度为()。

A • 24B • 48C. 72 D •535•当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为()参数,以节省参数值的传输时间和存储参数的空间。

A.整形B.引用型C.指针型D.常值引用型•6•向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为()。

A • O(n)B • 0(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•当向一个小根堆插入一个具有最小值的元素时,该元素需要逐层-- 调整,直到被调整到--- 位置为止。

浙江大学数据结构与算法课程自我测试答案

浙江大学数据结构与算法课程自我测试答案

窗体顶端1.邻接表是图的一种____ 。

正确答案点评A顺序存储结构B链式存储结构C索引存储结构D散列存储结构正确答案: B答案讲解:无【试题出处】第6章第 3节1窗体底端窗体顶端2.一组记录的关键字为( 46,79,56,38,40,84 ) ,则利用快速排序的方法,以第一个记录为基准元素得到的一次划分结果为。

正确答案点评A38,40,46,56,79,84B40,38,46,79,56,84C40,38,46,56,79,84D40,38,46,84,56,79正确答案: C窗体底端窗体顶端3.设深度为 h 的二叉树上只有度为 0 和度为 2 的结点,则此类二叉树中所包含的结点数至多为_____( 注意 C 和 D 中 h 是指数 )。

正确答案点评A2h-1B2(h-1)C2*h-1D 2*h正确答案: A窗体底端窗体顶端4.一个栈的入栈序列是正确答案点评a,b,c,d, 则下列序列中不可能的输出序列是_______ 。

A acbdB dcbaC acdbD dbac正确答案: D窗体底端窗体顶端5.计算机算法是指______ 。

正确答案点评A计算方法B排序方法C调度方法D解决问题的有限运算序列正确答案: D窗体底端窗体顶端6.关于二叉树的三种遍历,下列说法正确的是正确答案点评____ 。

A任意两种遍历序列都不可以唯一决定该二叉树B任意两种遍历序列都可以唯一决定该二叉树C先序遍历序列和后序遍历序列可以唯一决定该二叉树D先序遍历序列和中序遍历序列可以唯一决定该二叉树正确答案: D窗体底端窗体顶端7.顺序表的特点是______ 。

正确答案点评A逻辑上相邻的结点其物理位置不相邻B逻辑上相邻的结点其物理位置亦相邻C顺序表不是随机存储结构D在顺序表中插入和删除操作比在链表上方便正确答案: B窗体底端窗体顶端8.设散列表长为14 ,散列函数是H(key)=key%11, 表中已有数据的关键字为15 , 38 , 61 ,共四个,现要将关键字为49 的结点加到表中,用二次探测法解决冲突,则放入的位置是84 ____________ 。

数据结构期末考试试卷试题包括答案

数据结构期末考试试卷试题包括答案

数据结构期末考试试题及答案一、选择题评价一个算法时间性能的主要标准是()。

1.A、算法易于调试B、算法易于理解C、算法的稳定性和正确性D、算法的时间复杂度〔〕等五个特性。

计算机算法具备有输入、输出、 2.A、可行性、可移植性和可扩充性B、可行性、确定性和有穷性C、确定性、有穷性和稳定性D、xx、稳定性和 xx。

带头结点的单链表head 为空的判定条件是〔〕 3.A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL以下关于线性表的说法不正确的选项是()。

4.A、线性表中的数据元素可以是数字、字符、记录等不同类型。

B、线性表中包含的数据元素个数不是任意的。

C、线性表中的每个结点都有且只有一个直接前趋和直接后继。

D、存在这样的线性表:表中各结点都没有直接前趋和直接后继。

在顺序表中,只要知道(),就可在相同时间内求出任一结点的存储地址。

、基地址B、结点大小C、向量大小D、基地址和结点大小()运算中,使用顺序表比链表好。

6.A、插入B、删除C、根据序号查找D、根据元素值查找一个长度为 n 的顺序表中,向第 i 个元素之前插入一个新元素时,需要向后移动〔〕个元素、n-iB、n-i+1C、n-i-1D、i()适合作为经常在首尾两端操作线性表的存储结构。

8.A、顺序表B、单链表C、循环链表D、双向链表栈和队列的共同点是〔〕9.A、都是先进后出B、都是先进先出C、只允许在端点处插入和删除元素D、没有共同点一个队列的入列序列是1234,那么队列的输出序列是()。

10.A、4321B、12 3 4C、1432D、3241队列与一般的线性表的区别在于()。

11.A、数据元素的类型不同B、运算是否受限制C、数据元素的个数不同D、逻辑结构不同“假上溢〞现象会出现在 ()中。

12.A、循环队列B、队列C、链队列、顺序队列 D.二、填空.数据的逻辑结构被分集合、线性结构、树形结构和图结构.数据的逻辑结构被分为集合、线性结构、树形结构和图状结构.下面程序段的时间复杂度i=s=0whil(s<ni++s++;.树型结构和图形结构合称是非线性结构.在长度的顺序存储线性表的个元素〔 1≤i ≤n〕之前插入一个元素时需要向后移 n-i+个元素.在一个长度的顺序存储的线性表中,删除个元素〔 1≤i ≤n〕时需要向前移n-个元素.指指向非空循环单链hea 的尾结点,满 p->next=hea.已是带头结点的非空单链表,结点既不是第一个数据结点,也不是最后一个结点,的答案中选择适宜的语句序列,实现删结点的直接后继结点的语句序列 P->nexP->nex->nextP=P->next->nextwhil(P->next!=QP=P->nextwhil(P->next->next=QP=P->nextQ=PQ=P->nextP=L⑧L=L->next;⑨free(Q);9.在线性结构中,第一个结点无前驱结点,其余每个结点有且只有 1 个前驱结点。

word版,2017《数据结构》期末考试试题及答案,文档

word版,2017《数据结构》期末考试试题及答案,文档

2017《数据结构》期末考试一试题及答案《数据结构》期末考试一试题及答案1..................................... .. (2)试题1答案............................................. ............................................... (7)《数据结构》期末考试一试题及答案2..................................... .. (9)试题2答案............................................. ............................................... (14)《数据结构》期末考试一试题及答案3..................................... (16)试题3答案............................................. ............................................... (21)第1页共23页《数据结构》期末考试一试题及答案 1一、单项选择题(每题2分,共20分)1. 栈和行列的共同特色是( )。

A.只同意在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点用链接方式储存的行列,在进行插入运算时().A.仅改正头指针B.头、尾指针都要改正C.仅改正尾指针D.头、尾指针可能都要改正以下数据结构中哪一个是非线性结构?()A.行列B.栈C.线性表D.二叉树4.设有一个二维数组A[m][n],假定A[0][0]寄存地点在644(10),A[2][2]寄存地点在676(10),每个元素占一个空间,问A[3][3](10)寄存在什么地点?脚注(10)表示用10进制表示。

《数据结构与算法》期末练习题(含答案).docx

《数据结构与算法》期末练习题(含答案).docx

《数据结构与算法》期末练习一选择题1.以下与数据的存储结构无关的术语是(A.循环队列 B.链表 C.D )。

哈希表 D.栈2.算法的时间复杂度取决于( A )A.问题的规模 B.待处理数据的初态 C. A 和 B D.计算机 cpu3.一个栈的输入序列为 1 2 3 4 5,则下列序列中不可能是栈的输出序列的是( B )。

A. 2 3 4 1 5B. 5 4 1 3 2C. 2 3 1 4 5D. 1 54 3 24.有关静态链表的叙述: (1) 静态链表既有顺序存储的优点,又有动态链表的优点。

所以,它存取表中第 i 个元素的时间与 i 无关。

(2)静态链表中能容纳的元素个数的最大数在表定义时就确定了,以后不能增加。

(3) 静态链表与动态链表在元素的插入、删除上类似,不需做元素的移动。

以上错误的是( B )A .(1),(2)B.(1)C.(1),(2),(3)D.(2)5.对于有 n 个结点的二叉树 , 其高度为( D )A.nlog 2n B.log2n C.? log2n? |+1D.不确定6.从下列有关树的叙述中, 选出正确的叙述( C )A.二叉树中每个结点有两个子结点, 而树无此限制 , 因此二叉树是树的特殊情况。

B.当 K≥1 时高度为 K 的二叉树至多有2k-1个结点。

C.哈夫曼树是带权路径最短的树, 路径上权值较大的结点离根较近。

D.在二叉树中插入结点, 该二叉树便不再是二叉树。

7.设无向图的顶点个数为n,则该图最多有( B )条边。

A. n-1 B .n(n-1)/2 C . n(n+1)/2D.0E.n28.已知有向图 G=(V,E),其中 V={V1,V 2,V 3,V 4,V 5,V 6,V 7} ,E={<V1,V 2>, <V1,V 3>, <V1,V 4 >, <V2,V 5>, <V3,V 5>, <V3,V 6>, <V4,V 6>,<V5,V 7>, <V6,V 7>},G 的拓扑序列是( A )。

2021-2022-1数据结构期末考试卷(1)

2021-2022-1数据结构期末考试卷(1)

2021-2022-1数据结构期末考试卷(1)一、单项选择题(共20题,20分)1、散列函数有一个共同性质,即函数值应当以( )取其值域的每个值。

(1.0)A、最大概率B、最小概率C、同等概率D、平均概率正确答案: C2、采用分块查找时,若线性表共有625个元素,查找每个元素的概率相等,假设采用顺序查找来确定结点所在的块时,每块分( )个结点最佳。

(1.0)A、 6B、 10C、 25D、 625正确答案: C3、设S="",则LenStr(S)=( )。

(1.0)A、 0B、 1C、 2D、 3正确答案: A4、某串的长度小于一个常数,则采用( )存储方式最节省空间。

(1.0)A、链式B、顺序C、堆结构D、无法确定正确答案: B5、算法的计算量大小称为算法的( )。

(1.0)A、现实性B、难度C、效率D、时间复杂度正确答案: D6、*下列程序的时间复杂度是( )for (i=1; i<=n; ++i){for (j=1; j<=n; ++j){c [i][j]=0;}}(1.0)A、 O(n2)B、 O(n)C、 O(2n)D、 O(2n2)正确答案: A7、带头结点的链队列LQ示意图如下,链队列的队头元素是( )。

(1.0)A、AB、BC、CD、D正确答案: A8、一个循环队列一旦说明,其占用空间的大小( )。

(1.0)A、已固定B、可以变动C、不固定D、动态变化正确答案: A9、已知二维数组A[6][10],每个数组元素占4个存储单元,若按行优先顺序存放数组元素a[3][5]的存储地址是1000,则a[0][0]的存储地址是( )。

(1.0)A、 872B、 860C、 868D、 864正确答案: B10、对下述矩阵进行压缩存储后,失去随机存取功能是( )。

(1.0)A、对称矩阵B、三角矩阵C、三对角矩阵D、稀疏矩阵正确答案: D11、直接插入排序的方法是从第( )个元素开始,插入到前边适当位置的排序方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

模拟试卷二
一、单选题(每题2 分,共20分)
1.在一个带有附加表头结点的单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )
A.HL=p; p->next=HL;
B.p->next=HL->next; HL->next=p;
C.p->next=HL; p=HL;
D.p->next=HL; HL=p;
2.若顺序存储的循环队列的QueueMaxSize=n,则该队列最多可存储()个元素
A.n
B.n-1
C.n+1
D.不确定
3.下述哪一条是顺序存储方式的优点?()
A.存储密度大
B.插入和删除运算方便
C.获取符合某种条件的元素方便
D.查找运算速度快
4.设有一个二维数组A[m][n],假设A[0][0]存放位置在600(10),A[3][3]存放位置在678(10),每个元素占一个空间,问A[2][3](10)存放在什么位置?(脚注(10)表示用10进制表示,m>3)
A.658
B.648
C.633
D.653
5.下列关于二叉树遍历的叙述中,正确的是( )
A.若一个树叶是某二叉树的中序遍历的最后一个结点,则它必是该二叉树的前序遍历最后一
个结点
B.若一个点是某二叉树的前序遍历最后一个结点,则它必是该二叉树的中序遍历的最后一个
结点
C.若一个结点是某二叉树的中序遍历的最后一个结点,则它必是该二叉树的前序最后一个结

D.若一个树叶是某二叉树的前序最后一个结点,则它必是该二叉树的中序遍历最后一个结点
6.k层二叉树的结点总数最多为( )
A.2k-1
B.2K+1
C.2K-1
D.2k-1
7.对线性表进行二分法查找,其前提条件是( )
A.线性表以链接方式存储,并且按关键码值排好序
B.线性表以顺序方式存储,并且按关键码值的检索频率排好序
C. 线性表以顺序方式存储,并且按关键码值排好序
D.线性表以链接方式存储,并且按关键码值的检索频率排好序
8.对n个记录进行堆排序,所需要的辅助存储空间为( )
A. O(1og2n)
B.O(n)
C.O(1)
D.O(n2)
9.对于线性表(7,34,77,25,64,49,20,14)进行散列存储时,若选用H(K)=K %7作为散列函数,则散列地址为0的元素有()个,
A.1
B.2
C.3
D.4
10.下列关于数据结构的叙述中,正确的是( )
A.数组是不同类型值的集合
B.递归算法的程序结构比迭代算法的程序结构更为精炼
C.树是一种线性结构
D.用一维数组存储一棵完全二叉树是有效的存储方法
二、填空题(每空1分,共26分)
1.数据的逻辑结构被分为_________、________、__________和___________四种。

2.一个算法的时间复杂度为(3n3+2000n log2n+90)/n2,其数量级表示为________。

3.对于一个长度为n的单链存储的队列,在表头插入元素的时间复杂度为_________,在表尾插入元素的时间复杂度为____________。

4.假定一棵树的广义表表示为A(D(E,G),H(I,J)),则树中所含的结点数为__________个,树的深度为___________,树的度为_________。

5.后缀算式79 2 30 + - 4 2 / *的值为__________。

中缀算式(3+X*Y)-2Y/3对应的后缀算式为_______________________________。

6.在一棵高度为5的理想平衡树中,最少含有_______个结点,最多含有_______个结点。

7.在树中,一个结点的直接后继结点称为该结点的________。

一个结点的直接前趋结点称为该结点的________。

8.在一个具有10个顶点的无向完全图中,包含有________条边,在一个具有n个顶点的有向完全图中,包含有________条边。

9.假定一个线性表为(12,17,74,5,63,49,82,36),若按Key % 4条件进行划分,使得同一余数的元素成为一个子表,则得到的四个子表分别为____________________________、___________________、_______________________和__________________________。

10.对一棵B_树进行删除元素的过程中,若最终引起树根结点的合并时,会使新树的高度比原树的高度___________。

11.在堆排序的过程中,对任一分支结点进行筛运算的时间复杂度为________,整个堆排序过程的时间复杂度为________。

12.在线性表的散列存储中,装填因子α又称为装填系数,若用m表示散列表的长度,n 表示待散列存储的元素的个数,则α等于________。

三、运算题(每题 6 分,共24分)
1.在如下数组A中链接存储了一个线性表,表头指针存放在A [ 0].next,试写出该线性表。

A 0 1 2 3 4 5 6 7
data
next
2.已知一棵二叉树的前序遍历的结果是ABKCDFGHIJ, 中序遍历的结果是KBCDAFHIGJ, 试画出这棵二叉树。

3.已知一个图的顶点集V为: V={1,2,3,4,5,6,7};
其共有10条边。

该图用如下边集数组存储:
起点
终点

试用克鲁斯卡尔算法依次求出该图的最小生成树中所得到的各条边及权值。

4.画出向小根堆中加入数据4, 2, 5, 8, 3, 6, 10, 1时,每加入一个数据后堆的变化。

四、阅读算法(每题7分,共14分)
1.在下面的每个程序段中,假定线性表La的类型为List,元素类型ElemType为int,并假定每个程序段是连续执行的。

试写出每个程序段执行后所得到的线性表La。

(1)InitList(La);
Int a[]={100,26,57,34,79};
For (i=0;i<5;i++)
Insert(La,a[i]);
TraverseList(La);
(2)DeleteFront(La);
InsertRear(La, DeleteFront(La));
TraverseList(La);
(3)ClearList(La);
For (i=0;i<5;i++)
InsertFront(La,a[i]);
TraverseList(La);
2.现面算法的功能是什么?
void ABC(BTNode * BT)
{
if BT {
cout<<BT->data<<' ';
ABC(BT->left);
ABC(BT->right);
}
}
五、算法填空(共8分)
二分查找的递归算法。

Int Binsch(ElemType A[],int low,int high,KeyType K)
{
if ___________________
{
int mid=(low+high)/2;
if (_____________________) return mid; //查找成功,返回元素的下标 else if (K<A[mid].key)
return Binsch(A,low,mid-1,K); //在左子表上继续查找 else return_____________________________; //在右子表上继续查找 }
else ________________; //查找失败,返回-1
}
六、编写算法(共8分)
HL为单链表的表头指针,试写出在该单链表中查找具有给定的元素item的算法。

bool Find(LNode* HL, ElemType &item)。

相关文档
最新文档