- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章图(1-3)
以无向图为例 8.3 图的遍历 确定图中满足条件的顶点; 求解图的连通性问题,如求分量; 判断图中是否存在回路; ? 利 用 图 的 遍 历 从图中某个指定的顶点出发, 按照某一原则对 图中所有顶点都访问一次, 得到一个由图中所有顶 点组成的序列, 这一过程称为 。 图的遍历 一.深度优先遍历 从图中某个指定的顶点v出发,先访问顶 点v,然后从顶点v未被访问过的一个邻接点出发, 继续进行深度优先遍历,直到图中与v相通的所有 顶点都被访问;若此时图中还有未被访问过的顶 点, 则从另一个未被访问过的顶点出发重复上述 过程,直到遍历全图。 原则 递归过程 类似于二叉 树的前序遍历 完成一个连通 分量的遍历 v1 v2 v3 v4 v5 v6 v7 v8 v9 关于遍历序列的惟一性 出发点 ? ? ? ? ? ? ? ? ? v1 v2 v4 v7 v9 v5 v3 v6 v8 算法见教 材P247页 v1 v2 v3 v4 v5 v6 v7 v8 v9 1 2 0 0 1 1 3 4 8 5 7 6 2 7 3 8 2 ^ 1 6 ^ ^ ^ ^ ^ ^ ^ ^ 5 0 1 2 3 4 5 6 7 8 遍历序列 例 如果图中具有n个顶点、e条边,则 若采用邻接表存储该图,由于邻接表中有 2e个或e个边结点,因而扫描边结点的时 间为O(e);而所有顶点都递归访问一次, 所以,算法的时间复杂度为O(n+e)。 算法分析 若采用邻接矩阵存储该图,则查找每一个 顶点所依附的所有边的时间复杂度为O(n), 因而算法的时间复杂度为O(n2)。 从图中某个指定的顶点v出发,先访问顶点v, 然后依次访问顶点v的各个未被访问过的邻接点,然后 又从这些邻接点出发, 按照同样的规则访问它们的那 些未被访问过的邻接点,如此下去,直到图中与v 相 通的所有顶点都被访问; 若此时图中还有未被访问过 的顶点, 则从另一个未被访问过的顶点出发重复上述 过程, 直到遍历全图。 原则 二.广度优先遍历 类似于树的 按层次遍历 完成一个连通 分量的遍历 v1 v2 v3 v4 v5 v6 v7 v8 v9 出发点 v1 v2 v3 v4 v5 v9 v6 v8 v7 v1 v2 v3 v4 v5 v6 v7 v8 v9 1 2 0 0 1 1 3 4 8 5 7 6 2 7 3 8 2 ^ 1 6 ^ ^ ^ ^ ^ ^ ^ ^ 5 0 1 2 3 4 5 6 7 8 遍历序列 例 列 队 为了标记某一时刻图中哪些顶点是否被访 问,定义一维数组visited[0..n-1], 有 1 表示对应的顶点已经被访问 visited[i] = 0 表示对应的顶点还未被访问 ? 算法分析 采用邻接表存储该图:O(n+e)。 采用邻接矩阵存储该图:O(n2)。 如何确定顶点不被重复访问 算法见教材P250页 * 第八章 图 计算机网络 Internet Map Social network 状态转移图 一个数据元素---- 顶点 A 数据元素(顶点)之间的关系---- 边(弧) A B A B A B A B 8.1 图的基本概念 8.7 AOE网与关键路径 8.6 AOV网与拓扑排序 8.5 最短路径问题 8.4 最小生成树 8.3 图的遍历 8.2 图的存储方法 本章讨论的主要内容 应 用 重点 图是由顶点的非空有穷集合与顶点之间关系 (边或弧)的集合构成的结构, 通常表示为 G = (V, E) 其中, V 为顶点集合, E 为关系(边或弧)的集合。 一.图的定义 非空有穷集合 8.1 图的基本概念 (1) 用图形 (2) 用符号 (3) 用语言 顶点vi 与vj 是这条边的两个邻接点。 这条边依附于顶点vi 和顶点vj。 关于一条边或弧的表示 (vi, vj) 或 vi, vj vi vj vi vj vi vj vi vj 顶点偶对 例 v1 v2 v3 v4 其中 V2 = { v1, v2, v3, v4 } E2 = { v1,v2, v2,v1, v2,v3, v4,v3 } G2=(V2, E2) v1 v2 v3 v4 其中 V1 = { v1, v2, v3, v4 } E1 = { (v1,v2), (v1,v3), (v1,v4), (v2,v3),
文档评论(0)