据结构(线性表、栈、队列、二叉树、图).pptVIP

据结构(线性表、栈、队列、二叉树、图).ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构(线性表、栈、队列、二叉树、图)

无向图与有向图:边的表示方式是用该边的两个顶点来表示的,如果边的表示无方向,那么,对应的图就是无向图,否则称为有向图,如下图所示: 在无向图中,边的两个顶点在边的表示中可以互换,如边(V1,V4)与边(V4,V1)是等价的,表示的是同一条边。(无向图中边的表示用圆括号) ??? 在有向图中,边的走向不同就认为是不同的边。如在边的集合E={ 1,4 , 3,4 , 5,2 , 5,3 , 2,1 , 5,5 }(见右上图)中,其中 1,4 表示该边是由顶点1出发,到顶点4结束,即边 1,4 表明了该边的方向性,且两个顶点的顺序不能颠倒。(有向图中边的表示用尖括号) * 顶点的度:与顶点关联的边的数目,有向图顶点的度等于该顶点的入度与出度之和。? 入度——以该顶点为终点的边的数目和 出度——以该顶点为起点的边的数目和 图的阶:图中顶点的个数。例如图1—3中分别是6和3。 ? 度数为奇数的顶点叫做奇点,度数为偶数的点叫做偶点。 * [定理1] 图G中所有顶点的度数之和等于边数的2倍。因为计算顶点的度数时。每条边均用到2次。 [定理2] 任意一个图一定有偶数个奇点。 * 连通:如果图中结点U,V之间存在一条从U通过若干条边、点到达V的通路,称U、V是连通的。 连通图:如果一个无向图中,任一对不同顶点U、V,都有一条(U,V)通路,则称图G是连通的。 强连通图:在有向图G中,每一对结点之间都有路径的图。 网络:带权的连通图。 B A C D F E * 连通:如果顶点u,v属于G,u,v之间有一条从u通过若干条边到达v的通路,则认为顶点u和v是连通的。 连通图:如果对于图G中每一对不同顶点u,v都有一条(u,v)通路,则称G是连通图。 ??? 通路指u--边1--顶点1--边2--顶点2--……--v,点和边交替相接,且互不相同。 * 图的遍历 1、概念:从图中某一结点出发系统地访问图中所有结点,使每个结点恰好被访问一次,这种运算 称图的遍历。为了避免重复访问某个结点,可以设一个标志数组visited[I],未访问时值为FALSE,访问一次后就改为TRUE。 2、分类:深度优先遍历和广度优先遍历。 * 深度优先遍历:类似于树的先序遍历,从图中某个结点V0出发,访问此结点,然后依次访问从V0的未被访问的邻接点出发进行深度优先遍历,直到图中所有和V0有路径相通的结点均被访问到。若此时图中尚有结点未被访问,则另选图中一个未被访问的结点V1作为起点,重复上述过程,直至图中所有结点都被访问到为止。 * 广度优先遍历: 从图中某个结点V0出发,访问此结点,然后依次访问与V0邻接的、未被访问过的所有结点,然后再分别从这些结点出发进行广度优先遍历,直到图中所有被访问过的结点的相邻结点都被访问到。若此时图中还有结点尚未被访问,则另选图中一个未被访问过的结点作为起点,重复上述过程,直到图中所有结点都被访问到为止。    * * 无向图G有16条边,有3个4度顶点、4个3度顶点,其余顶点的度均小于3,则G至少有    个顶点。 * * 常见数据结构 线性表、栈、队列、二叉树、图 * (一)、线性表 线性表是n个类型相同的数据元素的有限序列,数据元素之间是一对一的关系,即每个数据元素最多有一个直接前驱和一个直接后继,如图2.1所示。例如:英文字母表(A,B,…,Z)就是一个简单的线性表,表中的每一个英文字母是一个数据元素, 每个元素之间存在唯一的顺序关系,如在英文字母表字母B的前面是字母A,而字母B后面是字母C。 * (二)、栈 栈是允许在一端进行插入和删除操作的特殊线性表。 允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动; 栈中元素个数为零时称为空栈。栈结构也称为后进先出表(LIFO)。 a1 a2 …… an 栈底 栈顶 MAXSIZE TOP * 队列(Queue)的定义 队列是限定仅在表的一端进行插入,在另一端进行删除操作的线性表。 允许插入的一端称为队尾(rear),允许删除的一端称为队首(front)。 队列的插入操作,称为入队;队列的删除操作,称为出队。当队列中没有元素时称为空队列。 设队列q=(a0,a1,a2,…,an-1),则a0称为队头元素,an-1称为队尾元素。元素按a0,a1,a2, …,an-1的次序入队,出队也只能按照这个次序。 队列和栈相反,队列的操作是按先进先出(First In First Out)的原则进行的,又称为先进先出的线性表(简称FIFO表)。 三、队列 * (四)、二叉树 类型与定义 *

文档评论(0)

ranfand + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档