第8章 图1.pptVIP

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 图 8.1 图 二、图的抽象数据类型 8.2 图的存储结构 图的存储结构主要有邻接矩阵和邻接表两种。 一、图的邻接矩阵 例2 :有向图的邻接矩阵如何表示? 例3 : 有权图(即网络)的邻接矩阵如何表示? 二. 图的邻接表存储结构 2、邻接表存储法的特点: 3、讨论:邻接表与邻接矩阵有什么异同之处? 三. 十字链表表示法 例:画出有向图的十字链表。 * * 8.1 图 8.2 图的存储结构 8.3 图的实现 8.4 图的遍历 8.5 最小生成树 8.6 最短路径 一、图的基本概念 1、图:由结点集合及结点间的关系集合组成的一种数据结构。记为G=( V, E ),其中:V是G的顶点集合,是有穷非空集;E是G的边集合,是有穷集。 v1 v2 v3 v5 v4 v4 v1 v2 v3 v4 2、有向图:图G中的每条边都是有方向的; 3、无向图:图G中的每条边都是无方向的; 4、完全图:图G任意两个顶点都有一条边相连接; 若 n 个顶点的无向图有 n(n-1)/2 条边, 称为无向完全图 若 n 个顶点的有向图有n(n-1) 条边, 称为有向完全图  (a)有向图 (b)有向图 (c)无向完全图 (d)有向完全图 1 2 3 4 1 2 3 4 5、子图:设有两个图 G1=(V1, E1) 和 G2=(V2, E2)。若 V2 ? V1 且 E2 ?E1, 则称 图G2 是 图G1 的子图。   (a)图1 (b)图2 7、路径:在图G=(V, E)中,若从顶点 vi 出发,沿一些边经过 一顶点vp1,vp2,…,vpm,到达顶点vj。则称顶点序列(vi,vp1,vp2,…, vpm ,vj ) 为从顶点vi 到顶点 vj 的路径。   路径长度:非带权图的路径长度是指此路径上边的条数; 带权图的路径长度是指路径上各边的权之和。 6、带权图:指边上带权的图。其中权是指每条边标上具有与该边相关的数据信息。 8、简单路径:路径上各顶点 v1,v2,...,vm 均不互相重复。 9、回路:若路径上第一个顶点 v1 与最后一个顶点vm 重合,则 称这样的路径为回路或环。 10、连通图:在无向图中, 若从顶点v1到顶点v2有路径, 则称顶点v1与v2是连通的。如果图中任意一对顶点都是连通的, 则称此图是连通图。 非连通图的极大连通子图叫做连通分量。 11、强连通图:在有向图中, 若对于每一对顶点vi和vj, 都存在一条从vi到vj和从vj到vi的路径, 则称此图是强连通图。   非强连通图的极大强连通子图叫做强连通分量。 12、生成树:是一个极小连通子图,它含有图中全部n个顶点,但 只有n-1条边。 13、结点的度:结点v的度是与它相关联的边的条数。记作TD(v)。 在有向图中, 结点的度等于该结点的入度与出度之和。其中结点 v 的入度是以 v 为终点的有向边的条数, 记作 ID(v);结点 v 的 出度是以 v 为始点的有向边的条数, 记作 OD(v)。 14、邻接结点:若 (u, v) 是 E(G) 中的一条边,则称 u 与 v 互为邻 接结点。 数据集合:由一组结点集合{vi }和一组边集合{ej}组成。当为带权图时每条边上权wi构成权集合{wi}。 操作集合: (1)初始化Initiate(G,n) (2)插入结点InsertVertex(G,vertex) (3)插入边InsertEdge(G,v1,v2,weight) (4)删除边DeleteEdge(G,v1,v2) (5)删除结点DeeteVertex(G,vertex) (6)第一个邻接结点GetFirstVex(G,v) (7)下一个邻接结点GetNextVex(G,v1,v2) 1、无权值的有向图的邻接矩阵 设有向图具有 n 个结点,则用 n 行 n 列的布尔矩阵 A 表示该有向图; 并且 A[i,j] = 1 , 如果i 至 j 有一条有向边;A[I,j]=0,如果 i 至 j 没有一条有向边。 有向图 邻接矩阵 2、无权值的无向图的邻接矩阵 设无向图具有 n 个结点,则用 n 行 n 列的布尔矩阵 A 表示该无向图; 并且 A[i,j]=1 , 如果i 至 j 有一条无向边;A[I,j]=0,如果 i 至 j 没有一条无向边。

文档评论(0)

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

教师资格证持证人

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

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档