- 1、本文档共124页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7.1 图的基本概念 图的定义: 图是由顶点集合及顶点间的关系集合组成 的一种数据结构: Graph=( V, E ) 其中: V = { x | x ? 某个数据对象} 是顶点的有穷非空集合; E = {(x, y) | x, y ? V }是顶点之间关系的有穷集合,也叫做边集合。 设图 G = (V, E)是一个有 n 个顶点的图,有一个记录各个顶点信息v0 ,v1, v2, …, vn-1的顶点表,可以用顺序方式或链式方式来存储顶点表;而图的边用一个二维数组表示,它是一个n×n的矩阵(邻接矩阵),用于表示顶点之间的邻接关系。定义为: 网络(带权图)的邻接矩阵 有向图的邻接表和逆邻接表 算法的时间复杂度是O(n+e) 在邻接表的边链表中,各个表结点的链入顺序任意,视表结点输入次序而定。 设图中有 n 个顶点,e 条边,则用邻接表表示无向图时,需要 n 个表头结点,2e 个表结点;用邻接表表示有向图时,若不考虑逆邻接表,只需 n 个表头结点,e 个表结点。 带权图的边结点中保存该边上的权值 cost 网络 (带权图) 的邻接表 7.3 图的遍历 深度优先搜索DFS ( Depth First Search ) 深度优先搜索的示例 DFS 在访问图中某一起始顶点 v 后,由 v 出发,访问它的任一邻接顶点 w1;再从 w1 出发,访问与w1邻接但还没有访问过的顶点 w2;然后再从 w2 出发,进行类似的访问,… 如此进行下去,直至到达所有的邻接顶点都被访问过的顶点 u 为止。接着,退回一步,退到前一次刚访问过的顶点,看是否还有其它没有被访问的邻接顶点。如果有,则访问此顶点,之后再从此顶点出发,进行与前述类似的访问;如果没有,就再退回一步进行搜索。重复上述过程,直到连通图中所有顶点都被访问过为止。 算法分析 图中有 n 个顶点,e 条边。 如果用邻接表表示图,沿链可以找到某个顶点 v 的所有邻接顶点 w。由于总共有 2e 个边结点,所以扫描边的时间为O(e)。而且对所有顶点递归访问1次,所以遍历图的时间复杂性为O(n+e)。 如果用邻接矩阵表示图,则查找每一个顶点的所有的边,所需时间为O(n),则遍历图中所有的顶点所需的时间为O(n2)。 广度优先搜索BFS ( Breadth First Search ) 广度优先搜索的示例 ①选定一个起始顶点v,从v 出发,依次访问与v相邻接的所有顶点w1, w2, …, wt ②然后再按w1, w2, …, wt 的顺序,访问其中每一个顶点的所有未被访问过的邻接顶点 ③按刚才的访问次序,依次访问它们的所有未曾被访问过的邻接顶点, … 如此做下去,直到图中所有顶点都被访问到为止 广度优先搜索是一种分层的搜索过程,每向前走一步可能访问一批顶点,不像深度优先搜索那样有往回退的情况。因此,广度优先搜索不是一个递归的过程,其算法也不是递归的。 为了实现逐层访问,算法中使用了一个队列,以记忆正在访问的这一层和上一层的顶点,以便于向下一层访问。 与深度优先搜索过程一样,为避免重复访问,需要一个辅助数组(队列)visited[ ],给被访问过的顶点加标记。 非连通图的遍历 7.4 生成树 普里姆(Prim)算法 从连通网络 N = { V, E }中的某一顶点 u0 出发,选择与它关联的具有最小权值的边(u0, v),将其顶点加入到生成树的顶点集合U中。以后每一步从一个顶点在U中,而另一个顶点不在U中的各条边中选择权值最小的边(u, v),把它的顶点加入到集合U中。如此继续下去,直到网络中的所有顶点都加入到生成树顶点集合U中为止。 克鲁斯卡尔 (Kruskal) 算法 设有一个有 n 个顶点的连通网络 G = { V, E }, 最初先构造一个只有 n 个顶点,没有边的非连通图 T = { V, ? }, 图G中每个顶点自成一个连通分量。 然后每当在 E 中选到一条具有最小权值的边时,若该边的两个顶点落在不同的连通分量上,则将此边加入到 T 中;否则将此边舍去,重新选择一条权值最小的边。 如此重复下去,直到所有顶点在同一个连通 分量上为止。 7.5 最短路径 最短路径问题:如果从图中某一顶点(称为源点)到达另一顶点(称为终点)的路径可能不止一条,如何找到一条路径,使得沿此路径各边上的权值总和达到最小。 问题解法 单源最短路径 — Dijkstra算法 任意顶点对之间的最短路径 — Floyd算法 单源最短路径问题 问题的提出: 给定一个带权有向图G与源点v,求从v到G中其
您可能关注的文档
- 10 输入输出系统.ppt
- 10UML交互图.ppt
- 10电子商务实例.ppt
- 10服装 演示文稿.ppt
- 2010流行趋势(流行颜色、裙装).ppt
- 10货币均衡.ppt
- 2010名师介绍数学建模常识与经验.ppt
- 10模电7.ppt
- 11、太平天国运动.ppt
- 2010年用友U8&金蝶K312.0对比分析报告(HR).ppt
- 2025年北海康养职业学院单招职业技能测试题库汇编.docx
- 年产 40 万件油田专用特种新材料密封产品报告表.pdf
- 2025年北京科技大学天津学院单招职业技能测试题库带答案.docx
- 2025年北京科技大学天津学院单招职业技能测试题库汇编.docx
- 2025年北京科技大学天津学院单招职业倾向性测试题库及参考答案一套.docx
- 2025年伊犁职业技术学院单招职业倾向性考试题库学生专用.docx
- 2025年伊犁职业技术学院单招职业倾向性考试题库及答案1套.docx
- 曲靖一中2025届高考决胜全真模拟卷(二)物理.pdf
- 2025年伊春职业学院单招职业适应性考试题库及参考答案.docx
- 2025年伊春职业学院单招职业技能考试题库附答案.docx
最近下载
- 2020年四川成都小升初数学真题及答案.docx VIP
- 第8章 三角形章末复习 华师大版数学七年级下册教案.doc VIP
- 07564唐宋词研究解读.doc VIP
- 人教版五年级下学期班主任工作总结.doc VIP
- 嵌体口腔修复学 课件.ppt
- 2023届高考专题复习:小说专题训练幽默讽刺.pdf VIP
- 有效沟通的技巧如何有效沟通的培训PPT课件.pptx VIP
- (高清版)B 26164.1-2010 电业安全工作规程 第1部分:热力和机械.pdf VIP
- 持续正压通气治疗阻塞性睡眠呼吸暂停综合征时的护理配合.doc VIP
- 2025至2030年中国有机硫化合物行业发展预测及投资策略报告.docx
文档评论(0)