数据结构考研模拟试题及详解(一)【圣才出品】
数据结构考研题库绪论【圣才出品】
![数据结构考研题库绪论【圣才出品】](https://img.taocdn.com/s3/m/104e1e5f03020740be1e650e52ea551810a6c99b.png)
数据结构考研题库绪论【圣才出品】哎呀,一提到数据结构考研题库的绪论,是不是感觉有点头大?别慌,咱们一起来瞅瞅这里面的门道。
我记得有一次,我去参加一个学术交流活动。
当时有个学生问一位资深的教授:“老师,数据结构到底是个啥?感觉好抽象啊!”教授笑了笑,指着旁边的书架说:“你看这书架上的书,有大有小,有薄有厚,我们为了方便找书,会按照一定的规则摆放,比如按照学科分类、按照作者名字的字母顺序等等。
这摆放的规则,就有点像数据结构。
”这就好比咱们的数据结构,它是一种组织和存储数据的方式,让我们能更高效地对数据进行操作和处理。
就像在一个图书馆里,如果书乱七八糟地堆着,找一本书得费老劲了;但有了合理的数据结构,就像给书都安排好了“座位”,找起来轻松多啦。
那咱们再来说说这考研题库里的绪论部分。
它就像是给咱们的一场热身运动,告诉我们数据结构这门课在考研中的地位和重要性。
比如说,它会告诉你,在历年的考研真题中,哪些知识点是经常出现的“常客”,哪些是偶尔露个面的“稀客”。
而且绪论还会给咱们讲讲学习数据结构的方法和技巧。
这就像是给你一把钥匙,告诉你怎么去打开这扇知识的大门。
比如说,要多做练习题,要善于总结归纳,还要学会举一反三。
再比如说,绪论里可能会提到一些常见的数据结构类型,像线性表、栈、队列、树、图等等。
这就像是给你介绍了一群“小伙伴”,让你先混个脸熟,知道它们的特点和脾气。
然后呢,考研题库的绪论还会告诉你,在考试的时候,要注意答题的规范和步骤。
不能想到啥就写啥,得有条有理,让阅卷老师能一眼看明白你的思路。
总之啊,这绪论就像是一个引路人,带着咱们走进数据结构考研的世界。
可别小看了它,认真琢磨琢磨,能让咱们后面的学习和复习少走好多弯路呢!就像开头说的那个书架的例子,只有先了解了规则,才能在知识的海洋里畅游,轻松找到我们想要的“宝藏”。
所以啊,同学们,一定要重视这数据结构考研题库的绪论部分,为我们的考研之路打下坚实的基础!。
考研基础专业课“数据结构”历年考研真题与典型题详解(绪 论)【圣才出品】
![考研基础专业课“数据结构”历年考研真题与典型题详解(绪 论)【圣才出品】](https://img.taocdn.com/s3/m/40543e3916fc700abb68fcaf.png)
第1章绪论1.1 知识要点总结一、数据结构的基本概念1.基础概念和术语(1)数据(Data):数据是客观事物的符号表示。
在计算机科学中指的是所有能输入到计算机中并被计算机程序处理的符号的总称。
(2)数据元素(Data Element):数据元素是数据的基本单位,在程序中通常作为一个整体来进行考虑和处理。
(3)数据项(Data Item):数据项是数据的不可分割的最小单位,数据项是对客观事物的某一方面的数据描述。
一个数据元素可由若干个数据项(Data Item)组成。
(4)数据对象(Data Object):数据对象是性质相同的数据元素的集合,是数据的一个子集。
如字符集合C={‘A’,’B’,’C’ ,…}(5)数据结构(Data Structure):数据结构是指相互之间存在一定联系(关系)的数据元素的集合。
元素之间的相互联系(关系)称为逻辑结构。
2.数据结构的形式定义数据结构的形式定义是一个二元组:Data Structure=(D, S)其中D是数据元素的有限集,S是D上关系的有限集。
数据元素之间的关系可以是元素之间本身代表的某种自然关系,也可以是为了处理问题方便而人为定义的关系,这种自然或人为定义的关系称为数据元素之间的逻辑关系,相应的结构称为逻辑结构。
3.数据结构的组成数据结构的三个组成部分:(1)逻辑结构数据元素之间的逻辑关系的描述。
数据元素之间的逻辑结构有四种基本类型:①集合:结构中的数据除了“同属于一个集合”外,没有其它关系。
②线性结构:结构中的数据元素之间存在一对一的关系。
③树形结构:结构中的数据元素之间存在一对多的关系。
④图形结构或网状结构:结构中的数据元素之间存在多对多的关系。
(2)存储结构数据结构在计算机中的实际表达方式,它包括对数据元素的表示和对关系的表示。
存储结构主要有:顺序存储、链式存储、索引存储和散列存储。
①顺序存储结构:用数据元素在存储器中的相对位置来表示数据元素之间的逻辑结构。
全国硕士研究生入学统一考试计算机科学与技术学科联考数据结构题库 典型题(图)【圣才出品】
![全国硕士研究生入学统一考试计算机科学与技术学科联考数据结构题库 典型题(图)【圣才出品】](https://img.taocdn.com/s3/m/feb930115acfa1c7ab00cc63.png)
5.2 典型题(含历年真题)详解一、单项选择题1.设有向图G=(V,E),顶点集V={V0,V1,V2,V3},边集E={<V0,V1>,<V0,V2>,<V0,V3>,<V1,V3>},若从顶点V0开始对图进行深度优先遍历,则可能得到的不同遍历序列个数是()。
[2015年联考真题]A.2B.3C.4D.5【答案】D【解析】根据题意知有向图的结构如图所示。
深度优先遍历的特点是尽可能先对纵深方向进行搜索,所以可能得到的不同遍历序列分别是:①V0→V2→V1→V3;②V0→V2→V3→V1;③V0→V1→V3→V2;④V0→V3→V2→V1;⑤V0→V3→V1→V2。
2.对如下所示的有向图进行拓扑排序,得到的拓扑序列可能是()。
[2014年联考真题] A.3,1,2,4,5,6B.3,1,2,4,6,5C.3,1,4,2,5,6D.3,1,4,2,6,5【答案】D【解析】拓扑排序方法如下:(1)从有向图中选择一个没有前驱(即入度为0)的顶点并且输出它;(2)从图中删去该顶点,并且删去从该顶点发出的全部有向边;(3)重复上述两步,直到剩余的网中不再存在没有前趋的顶点为止。
对于此有向图进行拓扑排序所有序列为:3,1,4,6,2,5和3,1,4,2,6,5。
所以选D3.设图的邻接矩阵A如下所示,各顶点的度依次是()。
[2013年联考真题]A.1,2,1,2B.2,2,1,1C.3,4,2,3D.4,4,2,2【答案】C【解析】当图用邻接矩阵存储时,各顶点的度是矩阵中此结点对应的横行和纵列非零元素之和。
4.下列AOE网表示一项包含8个活动的工程。
通过同时加快若干进度可以缩短整个工程的工期。
下列选项中,加快其进度就可以缩短工程工期的是()。
[2013年联考真题]A.c和eB.d和eC.f和dD.f和h【答案】C【解析】根据AOE网的定义可知,同时缩短几条关键路径上的活动时间,可以缩短整个工期。
全国硕士研究生入学统一考试计算机科学与技术学科联考计算机网络-模拟试题【圣才出品】
![全国硕士研究生入学统一考试计算机科学与技术学科联考计算机网络-模拟试题【圣才出品】](https://img.taocdn.com/s3/m/e47344eea8956bec0875e332.png)
第3部分模拟试题全国硕士研究生入学统一考试计算机科学与技术学科联考计算机学科专业基础综合模拟试题及详解(一)一、单项选择题(1~40小题,每小题2分,共80分。
)1.下面关于算法说法正确的是()。
A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C.算法的可行性是指指令不能有二义性D.以上几个都是错误的【答案】D【解析】A项,计算机程序只是实现算法的一种手段,手工也可以完成;B项,算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,程序是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合。
两者显然是不同的概念;C项,明显错误,可行性是指算法描述的操作都可以通过已经实现的基本运算执行有限次来实现。
2.将长度为n的单链表链接在长度为m的单链表之后的算法的时间复杂度为()。
A.O(1)B.O(n)C.O(m)D.O(m+n)【答案】C【解析】将长度为n的单链表接到长度为m的单链表之后只需要定位到m链表的末尾,然后将末尾元素的指针指向n链表,故时间复杂度为O(m)。
3.若某线性表最常用的操作是存取任一指定序号的元素并在表尾进行插入和删除运算,则利用()存储方式最节省时间。
A.顺序表B.双链表C.带头结点的双循环链表D.单循环链表【答案】A【解析】只有顺序表才能存取任一指定序号的元素,其他存储方式都需要遍历才能访问相应元素。
顺序表在表尾进行插入和删除运算的时间复杂度也为O(1)。
4.执行以下()操作时,需要使用队列作为辅助存储空间。
A.散列表的查找B.图的广度优先遍历C.二叉树的先序遍历D.图的深度优先遍历【答案】B【解析】A项,散列表的查找不需要额外的空间;C、D项,二叉树的先序遍历和图的深度优先遍历使用堆栈而不使用队列作为辅助存储空间;B项,在图的广度优先遍历中,如果结点v i在v k之前被访问,则v i的所有未被访问的邻接点应在v k的所有未被访问的邻接点之前访问,需要使用队列作为辅助存储空间。
李春葆《数据结构教程》(第4版)课后习题-第一章至第十二章(圣才出品)
![李春葆《数据结构教程》(第4版)课后习题-第一章至第十二章(圣才出品)](https://img.taocdn.com/s3/m/276d16b7c5da50e2524d7fe1.png)
第二部分课后习题第1章绪论1.简述数据与数据元素的关系与区别。
答:凡是能被计算机存储、加工的对象统称为数据,数据是一个集合。
数据元素是数据的基本单位,是数据的个体。
数据与元素之间的关系是元素与集合之间的关系。
2.数据结构和数据类型有什么区别?答:数据结构是互相之间存在一种或多种特定关系的数据元素的集合,一般包括三个方面的内容,即数据的逻辑结构、存储结构和数据的运算。
而数据类型是一个值的集合和定义在这个集合上的一组运算的总称,如C语言中的int数据类型是由-32768~32767(16位机)的整数和+、-、*、/、%等运算符组成。
3.设3个表示算法频度的函数f、g和h分别为:f(n)=100n3+n2+1000g(n)=25n3+5000n2h(n)=n1.5+5000nlog2n求它们对应的时间复杂度。
答:f(n)=100n3+n2+1000=O(n3),g(n)=25n3+5000n2=O(n3),当n→∞时,√n>log2n,所以h(n)=n1.5+5000nlog2n=O(n1.5)。
4.用C/C++语言描述下列算法,并给出算法的时间复杂度。
(1)求一个n阶方阵的所有元素之和。
(2)对于输入的任意三个整数,将它们按从小到大的顺序输出。
(3)对于输入的任意n个整数,输出其中的最大和最小元素。
答:(1)算法如下:本算法的时间复杂度为O(n2)。
(2)算法如下:本算法的时间复杂度为O(1)。
(3)算法如下:本算法的时间复杂度为O(n)。
5.设n为正整数,给出下列各种算法关于n的时间复杂度。
(1)(2)(3)答:(1)设while循环语句执行次数为T(n),则:(2)算法中的基本运算语句是if(b[k]>b[j])k=j,其执行次数T(n)为:(3)设while循环语句执行次数为T(n),则:则6.有以下递归算法用于对数组a[i..j]的元素进行归并排序:求mergesort(a,0,n-1)的时间复杂度。
数据结构考研题库绪论【圣才出品】
![数据结构考研题库绪论【圣才出品】](https://img.taocdn.com/s3/m/cc201658590216fc700abb68a98271fe900eaf55.png)
数据结构考研题库绪论【圣才出品】在计算机科学领域,数据结构是一门极其重要的基础课程,也是考研中的重点内容之一。
对于准备考研的同学来说,深入理解和掌握数据结构的相关知识,熟练解答各类题目,是取得优异成绩的关键。
数据结构研究的是数据的组织、存储和操作方式。
它不仅仅是一些理论概念,更是解决实际问题的有力工具。
通过合理选择和运用数据结构,可以提高程序的效率、降低存储空间的消耗,使计算机系统能够更高效地处理和管理数据。
在考研题库中,关于数据结构绪论部分的题目,通常涵盖了数据结构的基本概念、发展历程、研究内容以及其在计算机科学中的重要地位等方面。
首先,我们来谈谈数据结构的基本概念。
简单来说,数据结构就是数据元素之间的关系。
这些数据元素可以是数字、字符、图像、音频等各种信息。
而数据结构则规定了这些元素如何组织在一起,以及如何对它们进行操作。
数据结构的发展历程也是一个值得关注的点。
从早期的简单线性表、栈和队列,到后来的树、图等复杂结构,数据结构不断演进和完善,以适应日益复杂的计算机应用需求。
这种发展反映了计算机技术的不断进步和人们对更高效数据处理方式的追求。
数据结构的研究内容非常丰富。
它包括数据的逻辑结构、存储结构以及相应的操作算法。
逻辑结构指的是数据元素之间的逻辑关系,如线性结构、非线性结构等;存储结构则是数据在计算机中的存储方式,如顺序存储、链式存储等。
而操作算法则是针对不同的数据结构,设计的一系列操作方法,如插入、删除、查找、排序等。
数据结构在计算机科学中的地位举足轻重。
它是操作系统、数据库、编译原理等众多核心课程的基础。
一个优秀的程序员或计算机专业的学生,必须具备扎实的数据结构知识,才能写出高效、可靠的程序。
在考研的题目中,可能会要求考生分析不同数据结构的特点和适用场景。
比如,对于需要频繁进行插入和删除操作的数据集合,链表可能是一个更合适的选择;而对于需要快速随机访问的数据,数组则可能更具优势。
也可能会考查考生对数据结构基本概念的理解。
考研数据结构试题及答案
![考研数据结构试题及答案](https://img.taocdn.com/s3/m/057b5f7eae45b307e87101f69e3143323968f523.png)
考研数据结构试题及答案一、选择题(每题2分,共10分)1. 在数据结构中,线性表的顺序存储结构通常使用什么数据结构来实现?A. 链表B. 栈C. 数组D. 队列答案:C2. 下列关于图的描述中,错误的是:A. 图是由顶点和边组成的B. 图中的边可以是无向边或有向边C. 图中任意两个顶点之间有且只有一条边D. 图可以是无向的或有向的答案:C3. 哈希表的冲突可以通过以下哪种方法来解决?A. 链地址法B. 排序C. 插入排序D. 选择排序答案:A4. 在二叉树的遍历算法中,先访问根节点,然后遍历左子树,最后遍历右子树,这种遍历方式被称为:A. 前序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:A5. 在排序算法中,时间复杂度为O(nlogn)的算法是:A. 冒泡排序B. 快速排序C. 插入排序D. 选择排序答案:B二、填空题(每题2分,共10分)1. 在二叉搜索树中,对于任意节点,其左子树中的所有节点的值都比该节点的值________。
答案:小2. 堆是一种特殊的完全二叉树,其中每个节点的值都大于或等于其子节点的值的堆被称为________。
答案:最大堆3. 在图的遍历中,深度优先搜索(DFS)使用的数据结构是________。
答案:栈4. 动态数组在进行插入操作时,如果数组已满,通常需要进行________操作。
答案:扩容5. 快速排序算法在最坏情况下的时间复杂度是________。
答案:O(n^2)三、简答题(每题5分,共20分)1. 请简述什么是递归,并举例说明递归在数据结构中的应用。
答案:递归是一种方法,它允许函数调用自身来解决问题。
在数据结构中,递归常用于遍历树和图,例如二叉树的前序、中序和后序遍历。
2. 描述排序算法中的稳定性和不稳定性,并给出一个稳定性排序算法的例子。
答案:稳定性排序算法是指在排序过程中,相等的元素的相对顺序不会改变。
不稳定性排序算法则可能改变相等元素的相对顺序。
严蔚敏《数据结构》(C语言版)配套题库(章节题库1-6章)【圣才出品】
![严蔚敏《数据结构》(C语言版)配套题库(章节题库1-6章)【圣才出品】](https://img.taocdn.com/s3/m/c23605bb6edb6f1aff001fa8.png)
2.计算机算法指的是解决问题的步骤序列,它必须具备( )三个特性。 A.可执行性、可移植性、可扩充性 B.可执行性、确定性、有穷性 C.确定性、有穷性、稳定性 D.易读性、稳定性、安全性 【答案】B 【解析】计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求 的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述,也就是解决问题的 步骤序列。一个算法通常需要具备五大特性:有穷性;确定性;可执行性;输入一个算法有 零个或多个输入;输出一个算法有零个或者多个输出。
FOR i:=n-1 DOWNT0 1 DO FOR j:=l TO i DO IF A[ j]>A[ j+1] THEN A[ j]与 A[ j+1]对换;
其中 n 为正整数,则最后一行的语句最坏情况下的时间复杂度是( )。 A.D(n) B.O(nlogn) C.O(n3) D.O(n2) 【答案】D 【解析】这个是冒泡排序,最坏的情况下需要进行 1+2+...+n-1 次交换,即时间复杂 度是 O(n2)。
6.数据结构的抽象操作的定义与具体实现有关。( ) 【答案】× 【解析】数据结构的抽象操作定义取决于客观存在的一组逻辑特性,与其在计算机内具 体表示和实现无关。
7.顺序存储方式的优点是存储密度大,且插入、删除运算效率高。( ) 【答案】× 【解析】前者正确,后者错误。顺序存储方式在插入、删除元素时需要挪动大量的元素, 执行效率较低。
3.以下说法错误的是( )。 (1)算法原地工作的含义是指不需要任何额外的辅助空间 (2)在相同的规模 n 下,复杂度 O(n)的算法在时间上总是优于复杂度 O(2n)的 算法
李春葆《数据结构教程》笔记和课后习题详解-第一章至第二章【圣才出品】
![李春葆《数据结构教程》笔记和课后习题详解-第一章至第二章【圣才出品】](https://img.taocdn.com/s3/m/14c957cc6bec0975f465e2e0.png)
第1章绪论1.1复习笔记一、数据结构1.概述(1)计算机对具体问题的处理在用计算机解决一个具体的问题时,大致需要经过以下几个步骤:①分析问题,确定数据模型。
②设计相应的算法。
③编写程序,运行并调试程序,直至得到正确的结果。
(2)数据的含义①数据是描述客观事物的数、字符以及所有能输入到计算机中并被计算机程序处理的符号的集合。
从计算机的角度看,数据是所有能被输入到计算机中,且能被计算机处理的符号的集合。
它是计算机操作的对象的总称,也是计算机所处理信息的某种特定的符号表示形式。
②数据元素是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,有些情况下数据元素也称为元素、结点、记录等。
一个数据元素可以由若干个数据项组成。
数据项是具有独立含义的数据的最小单位,也称为域。
③数据对象是性质相同的有限个数据元素的集合,它是数据的一个子集。
默认情况下,数据结构中的数据指的都是数据对象。
(3)数据结构的定义数据结构是指所有数据元素以及数据元素之间的关系,可以看作是相互之间存在特定关系的数据元素的集合,因此,可时把数据结构看成是带结构的数据元素的集合。
数据结构包括以下几个方面:①数据元素之间的逻辑关系,即数据的逻辑结构,它是数据结构在用户面前呈现的形式。
数据的逻辑结构是从逻辑关系(主要指数据元素的相邻关系)上描述数据的,它与数据的存储无关,是独立于计算机的。
因此,数据的逻辑结构可以看作是从具体问题抽象出来的数学模型。
②数据元素及其关系在计算机存储器中的存储方式,即数据的存储结构,也称为数据的物理结构。
数据的存储结构是逻辑结构用计算机语言的实现或在计算机中的表示(也称为映像),也是指逻辑结构在计算机中的存储方式,它是依赖于计算机语言的。
一般情况下,只在高级语言(如C、C++、Java语言)的层次上讨论存储结构。
③施加在该数据上的操作,即数据的运算。
数据的运算是定义在数据的逻辑结构之上的,每种逻辑结构都有一组相应的运算。
考研基础专业课“数据结构”历年考研真题与典型题详解(排 序)【圣才出品】
![考研基础专业课“数据结构”历年考研真题与典型题详解(排 序)【圣才出品】](https://img.taocdn.com/s3/m/09934bb4aa00b52acfc7cad5.png)
第7章排序7.1 知识要点总结一、排序的基本概念所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。
在学习排序算法前,必须首先了解以下几个概念:1.排序算法的稳定性若待排序的序列中,存在多个具有相同关键字的记录,经过排序,这些记录的相对次序保持不变,则称此算法稳定,反之,如果排序后相同关键字的相对次序发生改变,则称此排序算法不稳定。
2.内部排序与外部排序(1)内部排序:即指排序过程中,所有的数据元素都存放在内存中。
(2)外部排序:在排序期间,数据元素无法全部同时放在内存中,再排序过程中需要借助相应的外存设备才能完成。
二、插入排序所谓插入排序,就是在一个已经排好序的记录子集的基础上,每一步将待插入的记录放到有序记录集的合适位置,直到所有待排记录全部插入为止。
比较常用的插入排序方式主要有两种:直接插入排序与折半插入排序。
1.直接插入排序(1)基本思想把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,将它插入到有序表中的适当位置,使之成为新的有序表,重复n-1次可完成排序过程。
(2)操作过程对待排序序列A[n]进行直接插入排序时,将数据序列分为有序区与无序区。
刚开始时,认为A[1]有序,其后序列无序。
此时从无序序列中取出A[2],插入到有序区中。
以后每次都从无序区取数插入有序区。
把A[i]插入到A[0],A[1],...,A[i-1]之中的具体实施过程为:先把A[i]赋值给变量t,然后将t依次与A[i-1],A[i-2],...进行比较,将比t大的元素右移一个位置,直到发现某个j(0≤j≤i-1),使得A[j] ≤t或j为(-1),把t赋值给A[j+1],直到无序区没有数据。
(3)直算法实现其算法实现如下所示:(4)算法分析①时间复杂度:从时间上分析,该算法在外层循环上执行n-1次插入,每次插入过程中还需要进行比较,最好的情况下(即数据已经有序),每次只需比较一次而且不需要移动数据,此时,总的比较次数为n-1。
数据结构习题答案全真模拟题试题
![数据结构习题答案全真模拟题试题](https://img.taocdn.com/s3/m/dded1701ae45b307e87101f69e3143323968f5f7.png)
数据结构习题答案全真模拟题试题第一章概论一、名词解释数据表示2.数据处理3.数据4.数据元素5.逻辑关系6.逻辑结构7.结构8.运算9.基本运算10.存储结构11.顺序存储结构12.链式存储结构13.索引存储结构 14.散列存储结构 15.算法 16.运行终止的程序可执行部分17.伪语言算法 18.非形式算法 19.时空性能 20.时间复杂性 21.数据结构二、填空题1.计算机专业人员必须完成的两项基本任务是:_________和__________。
2.数据在计算机存储器中的存在形式称为_________。
3.概括地说,数据结构课程的主要内容包括: 数据的__________、定义在_________、数据的__________的实现。
此外,该课程还要考虑各种结构和实现方法的__________。
4.由一种__________结构和一组__________构成的整体是实际问题的一种数学模型,这种数学模型的建立、选择和实现是数据结构的核心问题。
5.存储结构是逻辑结构的__________实现。
6.数据表示任务是逐步完成的,即数据表示形式的变化过程是__________->__________->__________。
7.数据处理任务也是逐步完成的,即转化过程是__________->__________->__________。
8.从数据结构的观点看,通常所说的"数据"应分成三个不同的层次,即__________、__________和__________。
9.根据需要,数据元素又被称为__________、__________、__________或__________。
10.在有些场合下,数据项又称为__________或__________,它是数据的不可分割的最小标识单位。
11.从某种意义上说,数据、数据元素和数据项实际反映了数据组织的三个层次,数据可由若干个__________构成,数据元素可由若干个__________构成。
数据结构考试试题库含答案解析
![数据结构考试试题库含答案解析](https://img.taocdn.com/s3/m/74684163ba0d4a7303763a1e.png)
数据结构习题集含答案目录目录 (1)选择题 (2)第一章绪论. (2)第二章线性表. (4)第三章栈和队列. (6)第四章串. (7)第五章数组和广义表 (8)第六章树和二叉树 (8)第七章图. (11)第八章查找. (13)第九章排序. (14)简答题 (19)第一章绪论. (19)第二章线性表. (24)第三章栈和队列. (26)第四章串. (28)第五章数组和广义表 (29)第六章树和二叉树 (31)第七章图. (36)第八章查找. (38)第九章排序. (39)编程题 (41)第一章绪论. (41)第二章线性表. (41)第三章栈和队列. (52)第四章串. (52)第五章数组和广义表 (52)第六章树和二叉树 (52)第七章图. (52)第八章查找. (52)第九章排序. (57)选择题第一章绪论1. 数据结构这门学科是针对什么问题而产生的?( A )A、针对非数值计算的程序设计问题 B 、针对数值计算的程序设计问题C、数值计算与非数值计算的问题都针对D、两者都不针对2. 数据结构这门学科的研究内容下面选项最准确的是( D )A、研究数据对象和数据之间的关系 B 、研究数据对象C、研究数据对象和数据的操作D、研究数据对象、数据之间的关系和操作3. 某班级的学生成绩表中查得张三同学的各科成绩记录,其中数据结构考了90分,那么下面关于数据对象、数据元素、数据项描述正确的是( C )A、某班级的学生成绩表是数据元素,90 分是数据项B、某班级的学生成绩表是数据对象,90 分是数据元素C、某班级的学生成绩表是数据对象,90 分是数据项D、某班级的学生成绩表是数据元素,90 分是数据元素4. *数据结构是指(A )。
A、数据元素的组织形式B、数据类型C、数据存储结构D、数据定义5. 数据在计算机存储器内表示时,物理地址与逻辑地址不相同,称之为(C )。
A、存储结构B、逻辑结构C、链式存储结构D、顺序存储结构6. 算法分析的目的是( C )A、找出数据的合理性B、研究算法中的输入和输出关系C、分析算法效率以求改进D、分析算法的易懂性和文档型性7. 算法分析的主要方法( A )。
李春葆《数据结构教程》(第4版)名校考研真题-综合应用题(圣才出品)
![李春葆《数据结构教程》(第4版)名校考研真题-综合应用题(圣才出品)](https://img.taocdn.com/s3/m/7619c530dd88d0d232d46a92.png)
二、综合应用题1.用单链表保存m个整数,节点的结构为(data,link),且|data|<n(n为正整数)。
现要求设计一个时间复杂度尽可能高效地算法,对于链表中绝对值相等的节点,仅保留第一次出现的节点而删除其余绝对值相等的节点。
[2015年联考真题]例如若给定的单链表head如下:删除节点后的head为:要求:(1)给出算法的基本思想。
(2)使用c或c++语言,给出单链表节点的数据类型定义。
(3)根据设计思想,采用c或c++语言描述算法,关键之处给出注释。
(4)说明所涉及算法的时间复杂度和空间复杂度。
答:(1)算法思想:定义一个大小为n的布尔数组flag,初始时所有的元素都赋值为false,用来标识遍历过程中是否出现元素绝对值为flag的节点。
然后遍历链表,遍历过程中,每一个当前结点data域的绝对值所对应的flag位:若为真,则删除该结点;若为假(false),则将flag位置为真(true)。
(2)节点的数据结构定义如下:(3)bool flag[n];//全局数组标志节点的绝对值是否出现过Node * deleteABSEnqualNode(Node * head){memset(flag, false, sizeof(flag));Node *pre =head;Node *p =head->next;while(p !=NULL ){if(flag[ abs(p->data)] ){ //如果此绝对值已经在节点值的绝对值中出现过则删除该节点pre->next =p->next;delete p;p =pre->next;} else {//否则,将flag中对应的位置置为true,并将指针指向下一个元素flag[ abs(p->data)] =true;p =p->next;}}return head;}(4)只遍历一次链表,所以时间复杂度为O(m)(m为单链表中元素的个数),申请大小为n的数组,所以空间复杂度为O(n)(n为节点绝对值的最大值)。
数据结构试题及答案考研
![数据结构试题及答案考研](https://img.taocdn.com/s3/m/553ff903ac02de80d4d8d15abe23482fb4da0299.png)
数据结构试题及答案考研试题:一、单项选择题(每题2分,共10分)1. 在数据结构中,下列哪个概念是为了解决动态数据存储问题而提出的?()A. 栈B. 队列C. 链表D. 数组2. 对于长度为n的有序数组,使用二分查找法查找一个元素的平均时间复杂度是()A. O(n)B. O(n^2)C. O(log n)D. O(1)3. 在图的遍历算法中,深度优先搜索(DFS)使用的数据结构是()A. 栈B. 队列C. 链表D. 数组4. 哈希表的冲突可以通过多种方式解决,其中不是常用的方法是()A. 开放寻址法B. 链地址法C. 线性探测法D. 跳房子法5. 下列数据结构中,哪个不是树形结构?()A. 堆B. 二叉搜索树C. 哈夫曼树D. 邻接矩阵二、简答题(每题5分,共20分)1. 请简述什么是堆栈,并说明它们在计算机科学中的重要性。
2. 描述一下什么是平衡二叉树,并解释为什么它在数据库索引中非常有用。
3. 解释一下什么是图的最小生成树,并给出Prim算法的基本思想。
4. 什么是哈希表?为什么哈希表在解决冲突时需要一个好的哈希函数?三、算法设计题(每题15分,共30分)1. 给定一个整数数组,请设计一个算法找出数组中的最长递增子序列。
请给出算法的基本思想,并说明其时间复杂度。
2. 请设计一个算法,实现两个链表是否相交的检测。
如果相交,请返回交点的节点;如果不相交,返回null。
请给出算法的基本思想,并说明其时间复杂度。
四、综合题(共40分)1. 给定一个字符串,请实现一个函数,该函数可以计算出该字符串中所有子字符串的频率。
要求使用哈希表来存储子字符串及其频率。
请描述算法的步骤,并分析其时间复杂度和空间复杂度。
(20分)2. 请解释什么是B树,并说明为什么B树在数据库系统中被广泛使用。
(20分)答案:一、单项选择题1. C(链表)2. C(O(log n))3. A(栈)4. D(跳房子法)5. D(邻接矩阵)二、简答题1. 堆栈是一种特殊的数据结构,遵循后进先出(LIFO)原则。
数据结构考研模拟题
![数据结构考研模拟题](https://img.taocdn.com/s3/m/dbfa2b5b312b3169a451a435.png)
模拟试题一一.单项选择题1. 设有一个二维数组A[m][ n]在存储中按行优先存放,假设A[0][0] 存放位置在78010),A[4][6]存放位置在1146(10),每个元素占一个空间,则A[6][20] 在( )位置,(10)表明用10进制数表示。
A. 692(10)B. 780(10)C. 1146(10)D. 1340(10)2. 设有一个顺序存储的栈S ,让元素序列1, 2, 3, ..., n 依次进栈和出栈,得到的出栈序列为p 1, p 2, p 3, ..., p n 。
若p 3 = 1,则p 1是( )。
A. 2B. 3C. 4D. 53. 设有一个双端队列DQ ,若让元素序列1, 2, 3, …, n 顺序全进队然后再出队,则可能的出队序列有( )种。
A. nB. n(n -1)/2C.D. n!4. 假定一组元素序列为{38, 42, 55, 15, 23, 44, 30, 74, 48, 26},按次序插入每个元素生成一棵平衡二叉树,那么最后得到的平衡二叉树中度为2的结点个数为( )。
A. 1B. 3C. 4D. 55. 以下关于二叉树的说法中错误的是( )。
A. 在二叉树的后序序列中最后一个结点一定是二叉树的根结点。
B. 在二叉树的中序序列中最后一个结点一定是二叉树的一个叶结点。
C. 在二叉树的前序序列中最后一个结点一定是二叉树的一个叶结点。
D. 在二叉树的层次序序列中最后一个结点一定是二叉树的一个叶结点。
6. 下列关于后缀表达式的比较中,结果为“假”的是( )。
① xy+z+ == xyz++ ② xy+z - == xyz -+ ③ xy -z+ == xyz+-④ xy -z - == xyz -- A. ①B. ①②C. ③④D. ②④7. 设图G = (V, E),其中 V={V 0,V 1,V 2,V 3}E ={(V 0,V 1), (V 0,V 2), (V 0,V 3), (V 1,V 3)}则从顶点V 0开始对图G 的深度优先遍历序列总共有( )种。
数据结构考研模拟试题及详解(二)【圣才出品】
![数据结构考研模拟试题及详解(二)【圣才出品】](https://img.taocdn.com/s3/m/d949bb71360cba1aa811dad8.png)
数据结构考研模拟试题及详解(二)一、单项选择题(每小题2分,共20分)(1)队列的特点是()。
A.先进后出B.先进先出C.任意位置进出D.前面都不正确【答案】B【解析】考察队列的性质。
(2)有n个记录的文件,如关键字位数为d,基数为r,则基数排序共要进行()遍分配与收集。
A.nB.dC.rD.n-d【答案】B【解析】基数排序是按组成关键字的各位值进行分配收集而完成的。
(3)在二叉树节点的先序序列、中序序列和后序序列中,所有叶子节点的先后顺序()。
A.都不相同B.完全相同C.先序和中序相同,而与后序不同D.中序和后序相同,而与先序不同【答案】B【解析】无论是哪种遍历方式,遍历叶子节点时,都是先访问左子树,后访问右子树。
(4)限定在一端加入和删除元素的线性表称为()。
A.双向链表B.单向链表C.栈D.队列【答案】C【解析】根据栈后进先出的特性,可见栈都在一端对元素进行操作。
(5)设内存工作区可容纳8个记录,初始文件共有64个关键字不同的记录,且已按关键字递减排列,如用置换.选择排序产生初始归并段,最长初始归并段所含记录数是()。
A.6B.7C.8D.9【答案】C【解析】对于置换选择排序,输入的文件是以关键字降序排列时,所得的初始归并段的最大长度为工作区的大小。
当输入的文件以关键字的升序排序时,只能得到一个长度为文件长度的初始归并段。
(6)设森林F对应的二叉树为B,它有m个节点,B的根为p,p的右子树上的节点个数为n,森林F中第一棵树的节点个数是()。
A.m-n-1B.n+lC.m-n+1D.m-n【答案】D(7)设有198个初始归并段,如采用K-路平衡归并三遍完成排序,则K值最大为()。
A.12B.13C.14D.15【答案】C【解析】k一路平衡归并,归并趟数公式s=[1og k m],m指归并段数,s指趟数。
要三遍完成遍历,那就看两遍完成排序的需遍历的最小数。
把s=2和m=198带入公式,可知两遍完成排序时k最小为15,所以k<15。
数据结构模拟试题(含答案)
![数据结构模拟试题(含答案)](https://img.taocdn.com/s3/m/227f0b496ad97f192279168884868762caaebb98.png)
数据结构模拟试题(含答案)一、单选题(共100题,每题1分,共100分)1、在一棵度为3的树中,度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为()个。
A、5B、6C、7D、4正确答案:B2、假设在一棵二叉树中,双分支结点数为15,单分支结点数为30个,则叶子结点数为()个。
A、15B、47C、16D、17正确答案:C3、设某哈夫曼树中有199个结点,则该哈夫曼树中有()个叶子结点。
A、100B、99C、102D、101正确答案:A4、一棵含18个结点的二叉树的高度至少为( )A、5B、4C、6D、3正确答案:A5、有关栈的描述,正确的是()A、栈是一种先进先出的特殊的线性表B、只能从栈顶执行插入、删除操作C、只能从栈顶执行插入、栈底执行删除D、栈顶和栈底均可执行插入、删除操作正确答案:B6、若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的()A、中序遍历算法B、前序遍历算法C、后序遍历算法D、层次遍历算法正确答案:A7、若要在单链表中的结点*p之后插入一个结点*s,则应执行的语句是( ) typedef struct node { char data[8]; struct node *next; } LinkStrNode;A、s->next=p; p->next=s->next;B、s->next=p->next; p->next=s;C、p->next=s->next; s->next=p;D、p->next=s; s->next=p->next;正确答案:B8、在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为( )。
A、O(n)B、O(1)C、O(n2)D、O(n/2)正确答案:A9、执行一趟快速排序能够得到的序列是()。
A、[45,34,12,41] 55 [72,63,27]B、[63,12,34,45,27] 55 [41,72]C、[12,27,45,41] 55 [34,63,72]D、[41,12,34,45,27] 55 [72,63]正确答案:D10、带权有向图G用邻接矩阵A存储,则顶点i 的入度等于A中()。
数据结构考研题库排 序【圣才出品】
![数据结构考研题库排 序【圣才出品】](https://img.taocdn.com/s3/m/dc3cbe71360cba1aa811daf7.png)
第7章排序一、单项选择题1.以比较为基础的排序算法在最坏情况下的计算时间下界为()。
A.O(n)B.O(n2)C.O(logn)D.O(nlogn)【答案】D【解析】在以比较为基础的排序算法中,冒泡排序、选择排序和插入排序的比较次数为O(n2),快速排序在平均情况下复杂性为O(nlogn),堆排序和合并排序在最坏情况下复杂性为O(nlogn)。
2.下列排序方法中,()是稳定的排序方法。
A.直接插入排序和快速排序B.折半插入排序和起泡排序C.简单选择排序和四路归并排序D.树形选择排序和shell排序【答案】B【解析】直接插入排序、四路归并排序、起泡排序、树形选择排序和折半插入排序是稳定的排序。
快速排序、shell排序、简单选择排序是不稳定的排序。
3.下列不属于内部排序的算法是()。
A.归并排序B.拓扑排序C.树型排序D.折半插入排序【答案】B【解析】归并排序、树型排序、折半插入排序属于内部排序算法,拓扑排序不属于内部排序算法。
4.下列排序算法中,()算法可能会出现下面情况:在最后一趟开始之前,所有元素都不在其最终的位置上。
A.堆排序B.冒泡排序C.快速排序D.插入排序【答案】D【解析】插入排序在最后一个元素被插入时,所有元素都要后移,即在最后一趟开始之前,所有元素都不在其最终的位置上。
5.用直接插入排序对下面四个序列进行递增排序,元素比较次数最少的是()。
A.94,32,40,90,80,46,21,69B.32,40,21,46,69,94,90,80C.21,32,46,40,80,69,90,94D.90,69,80,46,21,32,94,40【答案】C【解析】直接插入排序对于基本有序的序列进行排序效率最高。
6.对于序列(49,38,65,97,76,13,27,50)按由小到大进行排序,初始步长d=4的希尔排序法第一趟的结果的是()。
A.49,76,65,13,27,50,97,38B.13,27,38,49,50,65,76,97C.97,76,65,50,49,38,27,13D.49,13,27,50,76,38,65,97【答案】D【解析】根据希尔排序的规则,d=4的第一趟排序过程为第n个位置和第n+4个元素比较,并将较小的元素换到前面,49和76不用互换、38和13互换、65和27互换,……,第一趟排序后的结果为49,13,27,50,76,38,65,97。
李春葆《数据结构教程》(第4版)章节题库-文件(圣才出品)
![李春葆《数据结构教程》(第4版)章节题库-文件(圣才出品)](https://img.taocdn.com/s3/m/4c7f39574693daef5ff73d7f.png)
第12章文件一、选择题1.哈希文件使用哈希函数将记录的关键字值计算转化为记录的存放地址,因为哈希函数是一对一的关系,则选择好的()方法是哈希文件的关键。
A.哈希函数B.除余法中的质数C.冲突处理D.哈希函数和冲突处理【答案】D【解析】哈希表是根据文件中关键字的特点设计一种哈希函数和处理冲突的方法将记录散列到存储设备上。
2.下述文件中适合于磁带存储的是()。
A.顺序文件B.索引文件C.哈希文件D.多关键字文件【答案】A【解析】磁带存储是一种顺序存储,顺序文件(sequential file)是记录按其在文件中的逻辑顺序依次进入存储介质而建立的,即顺序文件中物理记录的顺序和逻辑记录的顺序是一致的。
因此顺序文件适合磁带存储。
二、判断题1.倒排文件是对次关键字建立索引。
()【答案】√【解析】倒排文件是对每一个次关键字项建立次关键字索引(称为倒排表),将所有具有相同次关键字的记录的物理记录号都填入倒排表为此次关键字的表中。
2.倒排序文件的优点是维护简单。
()【答案】×【解析】倒排文件的优点是检索记录较快。
特别是对某些询问,不用读取记录,就可得到解答。
3.哈希表与哈希文件的唯一区别是哈希文件引入了“桶”的概念。
()【答案】×【解析】哈希文件是使用一个函数(算法)来完成一种将关键字映射到存储器地址的映射,根据用户给出的关键字,经函数计算得到目标地址,再进行目标的检索。
哈希表是根据关键码值而直接进行访问的数据结构。
4.文件系统采用索引结构是为了节省存储空间。
()【答案】×【解析】是为了缩短查找的时间,牺牲了一部分存储空间。
5.对处理大量数据的外存介质而言,索引顺序存取方法是一种方便的文件组织方法。
()【答案】×【解析】索引顺序存取方法插入操作比较麻烦,对于处理大量数据,会有大量的记录进入溢出区,而基本区中又浪费很多空间。
6.对磁带机而言,ISAM是一种方便的文件组织方法。
最新计算机全国考研数据结构试卷一(练习题含答案)打印版.doc
![最新计算机全国考研数据结构试卷一(练习题含答案)打印版.doc](https://img.taocdn.com/s3/m/17060239a4e9856a561252d380eb6294dd882206.png)
最新计算机全国考研数据结构试卷一(练习题含答案)打印版.doc数据结构试卷1一、单选题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 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个记录的文件进行快速排序,所需要的辅助存储空间大致为n) D. O(n2) A. O(1) B. O(n) C. O(1og29.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.8二、填空题1.通常从四个方面评价算法的质量:_________、_________、_________和_________。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构考研模拟试题及详解(一)
一、单项选择题(每小题2分,共20分)
(1)设Huffman树的叶与节点数为m,则节点的点数为()。
A.2m
B.2m-1
C.2m+l
D.m+l
【答案】B
【解析】Huffman不存在一个分支的节点,对于任意的二叉树都有n0=n2+1,而n0=m,故推出Huffman的总结点数为m+m-1。
(2)若顺序存储的循环队列的QueueMaxSize=n,则该队列最多可存储()个元素。
A.n
B.n-1
C.n+l
D.不确定
【答案】B
【解析】循环队列Q.rear==Q.front用来表示队列为空,而(Q.rear+1)%QueueMaxSize==Q.front来判断队列是否已满。
也就是说循环队列需要一个额外的数据空间来表示循环队列已经存满的。
所以最多只能存n-1。
(3)下述哪一条是顺序存储方式的优点?()
A.存储密度大
B.插入和删除运算方便
C.获取符合某种条件的元素方便
D.查找运算速度快
【答案】A
【解析】因为顺序存储方式把分配给存储单元全用来存放结点数据,结点之间的逻辑关系没有占用额外的存储空间。
所以相比链式存储方式同样大小的空间它可以存下更多的数据。
(4)设有一个二维数组A[m][n],假设A[0][0]存放位置在为
每个元素占一个空
间.
A.658
B.648
C.633
D.653
【答案】D
【解析】根据二维数组地址计算公式LOC(A[i][j])=LOC(A[p][q])+((i−p)*n+(j−q))*t(t表示字节),把t=1、A[0][0]及A[3][3]代入得到n=25。
故A[2][3]
=A[0][0]+(2*25+3)*1=653。
(5)下列关于二叉树遍历的叙述中,正确的是()。
A.若一个树叶是某二叉树的中序遍历的最后一个节点,则它必是该二叉树的前序遍历最后一个节点
B.若一个节点是某二叉树的前序遍历最后一个节点,则它必是该二叉树的中序遍历的最后一个节点
C.若一个节点是菜二叉树的中序遍历的最后一个节点,则它必是该二叉树的前序最后一个节点
D.若一个树叶是某二叉树的前序遍历的最后一个节点,则它必是该二叉树的中序遍历最后一个节点
【答案】D
【解析】A项,最后一个叶子节点是左节点时前序遍历和中序遍历最后一个节点不一样。
BC项,比如树根节点没有右孩子,那么树根节点是中序遍历的最后一个节点,而树根节点是前序遍历的第一个节点。
(6)k层二叉树的节点总数最多为()。
A.
B.
C.
D.
【答案】A
【解析】k层二叉树结点最多的情况就是满二叉树。
那么根据满二叉树的结点数计算公
式可知答案为。
(7)对线性表进行二分法查找,其前提条件是()。
A.线性表以链接方式存储,并且按关键码值排好序
B.线性表以顺序方式存储,并且按关键码值的检索频率排好序
C.线性表以顺序方式存储,并且按关键码值排好序
D.线性表以链接方式存储,并且按关键码值的检索频率排好序
【答案】C
【解析】要进行二分查找必须具备三个条件:①确定元素之间比较大小的运算符(按关键码指排的必要性);②排序;③各元素可以随机访问到;
(8)对n个记录进行堆排序,所需要的辅助存储空间为()。
A.O(log2n)
B.O(n)
C.O(1)
D.O(n2)
【答案】C
【解析】堆排序是就地排序,辅助空间是O(1)。
(9)对于线性表(7,34,77,25,64,49,20,14)进行散列存储时,若选用H (K)=K%7作为散列函数,则散列地址为0的元素有()个。
A.1
B.2
C.3
D.4
【答案】D
【解析】根据H(K)=K%7,可知地址为0的都是为7的倍数,线性表中有7、77、49、14总共有四个。
(10)下列关于数据结构的叙述中,正确的是()。
A.数组是不同类型值的集合
B.递归算法的程序结构比迭代算法的程序结构更为精炼
C.树是一种线性结构
D.用一维数组存储一棵完全二叉树是有效的存储方法
【答案】BD
【解析】A项,数组是相同类型指的集合。
B项:递归算法相对与迭代算法简洁明了。
C 项,树是一种非线性结构。
D项,一颗完全二叉树存放在存储密度更大的顺序表中比起二叉链表可以节约更多的一些空间;
二、(本题8分)
假定一棵二叉树广义表表示为a(b(c),d(e,f)),分别写出对它进行先序、中序、后序、按层遍历的结果。
【答案】根据二叉树的广义表的定义可以画出该二叉树,如图2-1所示。
a
b d
c e f
图2-1
根据图2-1遍历。
先序:a,b,c,d,e,f
中序:c,b,a,e,d,f
后序:c,b,e,f,d,a
按层:a,b,d,c,e,f
三、(每小题4分,共8分)
己知一个无向图的顶点集为{a,b,c,d,e},其邻接矩阵如下所示:
(1)画出该图的图形;
(2)根据邻接矩阵从顶点a出发进行深度优先遍历和广度优先遍历,写出相应的遍历序列。
【答案】(1)邻接矩阵中为1的部分表示该行该列对应的元素有边。
据此画出图形。
该图的图形如图2-2所示。