- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
图论[离散数学离散数学(版)清华出版社]
第四部分:图论(授课教师:向胜军) “巧渡河”问题 问题:人、狼、羊、菜用一条只能同时载两位的小船渡河,“狼羊”、“羊菜”不能在无人在场时共处,当然只有人能架船。 图模型:顶点表示“原岸的状态”,两点之间有边当且仅当一次合理的渡河“操作”能够实现该状态的转变。 起始状态是“人狼羊菜”,结束状态是“空”。 问题的解:找到一条从起始状态到结束状态的尽可能短的通路。 “巧渡河”问题的解 注意:在“人狼羊菜”的16种组合中允许出现的只有10种。 最短路径问题(shortest paths problem) 设带权图G=V, E, W,G中每条边带的权均大于等于0,x, y为G中任意两个顶点,从x到y的所有通路中带权最小的通路称为x到y的最短路径,求给定两顶点间的最短路径问题称为最短路径问题。( If no path between x and y has weight less than W(P), then P is called a shortest path. ) 单源最短路径(Single-source shortest paths) We are given a weighted graph G=V, E, W and a source vertex s. The problem is to find a shortest path from s to each vertex v. Dijstra, Edsgar Wybe(1930-) 荷兰计算机科学家,1972年图林奖得主。 最著名的成果:首先指出程序设计语言中的goto语句是有害的,并首创了结构化程序设计方法。 至今仍被广泛应用的算法:解决机器人运动路径规划问题的“最短路径算法”。 被引用最多的论断:“程序测试只能用来证明有错,绝不能证明无错。” 被引用作为其60岁生日纪念论文集书名的另一句名言:Beauty is our business 求最短路径的Dijstra算法 输入:连通带权图G,|V|=n, 指定顶点s?V 输出:每个顶点v的标注(l(v), u), 其中: l(v)即从s到v的最短路径长度。 u是该路径上v的前一个顶点。 求最短路径的Dijstra算法 算法步骤: 1. 初始化:i=0, S0={s}, l(s)=0, 对其它一切v?VG, 将l(v)置为?。若n=1,结束。 2. ?v?Si’=VG-Si, 比较l(v)和l(ui)+w(ui, v)的值 (ui?Si),如果l(ui)+w(ui, v) l(v), 则将v的标注更新为(l(ui)+w(ui, v), ui),即: l(v)=min{l(v), minu?Si{l(u)+w(u,v)}}. 3. 对所有Si’中的顶点,找出具有最小l(v)的顶点v, 作为ui+1. 4. Si+1 = Si ?{ui+1}. 5. i = i+1; 若i=n-1, 终止。否则,转到第2步。 求最短路径的一个例子 求最短路径的一个例子(续) 求最短路径的一个例子(续) 将计算过程用一张表描述出来: 作业 编一个程序实现Dijstra算法 [定义] 连通性(connectivity) 设G=V,E,若从vi到vj存在一条通路,则称vi到vj连通(connective)或可达。 说明:对无向图而言,若vi到vj可达,则vj到vi也可达。对有向图而言则未必。 [定理] 任意一个连通无向图的任意两个不同顶点都存在一条简单通路。 [定义] 无向图的连通性 若G=V,E中任意两个顶点都连通,则称此无向图是连通的(connected)。 [定义] 连通分图(connected components) 图G可分为几个不相连通的子图,每一子图本身都是连通的。称这几个子图为G的连通分图。 [定义] 有向图的连通性 (1) 弱连通: 若D=V,E对应的无向图是连通图,则称G为弱连通(weakly connected)。 (2) 强连通: 若D=V,E中任意两点间都有通路,即对a和b,a到b可达,b到a可达,称G为强连通(strongly connected)。 [定义] 割点 设G=V, E是无向图,v∈V,若从G中删除顶点v后所得的连通分支数p(G-v)p(G), 则称v是G中的割点。 割点 设G=V, E是无向图,e∈E,若从G中删除边e后所得的连通分支数p(G-e)p(G), 则称e是G中的割边。 [定义] 割边 割边 §3 图的矩阵表示 本节主要考虑三种矩阵,即关联矩阵,邻接矩阵与可达矩阵。关联矩阵反映的是顶点与边(弧)的关系;邻接矩阵反映的是顶点与顶点之间的关系;可达矩阵反映了图的联通情况
原创力文档


文档评论(0)