数据结构 珍藏 课件 PPT 考研 大学课程 数据结构-第七章-图.pptVIP

数据结构 珍藏 课件 PPT 考研 大学课程 数据结构-第七章-图.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文档。上传文档
查看更多
2004-12-16 7.1 图的定义和术语 图——由两个集合V和E组成的,记为G=(V,E) 其中:V是顶点的非空有限集。 E是边的有限集合,边是顶点的无序对或有序对。 有向图—— E是弧的有限集合,弧是顶点的有序对,记为v,w,v,w是顶点,v为弧尾,w为弧头。 无向图——E是边的有限集合,边是顶点的无序对,记为(v,w)或(w,v),并且(v,w)=(w,v)。 有向完全图—n个顶点的有向图最大弧数是n(n-1)。 无向完全图—n个顶点的无向图最大边数是n(n-1)/2 路径:路径是从一个顶点出发到另一个顶点之间所经过的顶点序列。 路径长度:路径上边或弧的数目。 回路:第一个顶点和最后一个顶点相同的路径叫~。 简单路径:序列中顶点不重复出现的路径叫~。 简单回路:除了第一个顶点和最后一个顶点外,其余顶点不重复出现的回路叫~ 7.2.1邻接矩阵(数组表示法) 用两个数组分别存放顶点的信息和顶点间 关系的信息,其中存放顶点间关系的数组称为 邻接矩阵。 邻接矩阵特点: (1)无向图的邻接矩阵对称,可压缩存储;有n个顶点的无向图需存储空间为n(n+1)/2。 有向图邻接矩阵不一定对称;有n个顶点的有向图需存储空间为n2。 (2)无向图中顶点Vi的度是邻接矩阵A中第i行元素之和。 有向图中,顶点Vi的出度是A中第i行元素之和,顶点Vi的入度是A中第i列元素之和。 7.2.2邻接表 实现:为图中每个顶点建立一个单链表,第i 个单链表中的结点表示依附于顶点Vi的边。 (有向图中指以Vi为尾的弧) 特点: (1)无向图中顶点Vi的度为第i个单链表中的结点数。 (2)有向图中,顶点Vi的出度为第i个单链表中的结点个数。顶点Vi的入度为整个单链表中邻接点域值是i的结点个数。 (3)逆邻接表: 深度优先遍历算法:递归算法 7.2.4无向图的邻接多重表表示法 边结点: typedef struct node{ int mark; //标志域 int ivex, jvex; //该边依附的两个顶点在表头数组中位置 struct node *ilink, *jlink; //分别指向依附于ivex和jvex 的下一条边 }EBox; mark ivex ilink jvex jlink 顶点结点: typedef struct dnode{ VertexType data; //存与顶点有关的信息 EBox *firstedge; //指向第一条依附于该顶点的边 }VexBox; data firstedge a e c b d 1 2 3 4 a c d b 5 e 1 2 1 4 3 4 3 2 3 5 5 2 ^ ^ ^ ^ ^ 7.3 图的遍历 从图中某个顶点出发游历图,访遍 图中其余顶点,并且使图中的每个顶点 仅被访问一次的过程。 深度优先搜索 广度优先搜索 遍历应用举例 从图中某个顶点V0 出发,访问此顶点,然后依次从V0的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和V0有路径相通的顶点都被访问到。 一、深度优先搜索遍历 连通图的深度优先搜索遍历 V1 V2 V4 V5 V3 V7 V6 V8 深度遍历:V1? V2 ?V4 ? V8 ?V5 ?V3 ?V6 ?V7 例: V1 V2 V4 V5 V3 V7 V6 V8 深度遍历:V1? V2 ?V4 ? V8 ?V5 ?V6 ?V3 ?V7 V1 V2 V4 V5 V3 V7 V6 V8 深度遍历:V1? V2 ?V4 ? V8 ?V5 ?V6 ?V3 ?V7 V1 V2 V4 V5 V3 V7 V6 V8 深度遍历:V1? V2 ?V4 ? V8 ?V3 ?V6 ?V7 ?V5 开始 标志数组初始化 V=1 V访问过 DFS V=V+1 V==Vexnum 结束 N Y N Y 算法7.4 单击此处编辑母版标题样式 单击此处编辑母版副标题样式 7. 图 2 4 5 1 3 6 G1 图G1中:V={1,2,3,4,5,6} E={1,2, 2,1, 2,3, 2,4, 3,5, 5,6, 6,3} 1 5 7 3 2 4 6 图G2中:V={1,2,3,4,5,6,7} E={(1,2), (1,3), (2,3), (2,4),(2,5), (5,6), (5,7)} G2 例: 2 1 3

文档评论(0)

小教资源库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档