Floyd算法及其软件实现.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
任意两点间的最短路问题 Floyd算法 使用范围: 求每对顶点的最短路径; 有向图、无向图和混合图; 算法思想: 直接在图的带权邻接矩阵中用插入顶点的方法依次递推地构造出n个矩阵D(1), D(2), …, D(v), D(v)是图的距离矩阵, 同时引入一个后继点矩阵记录两点间的最短路径. 输入参数:G的带权邻接矩阵W. 算法输出:距离矩阵D以及路由矩阵R. (I)求距离矩阵的方法. (II)求路径矩阵的方法. 在建立距离矩阵的同时可建立路径矩阵R. (III)查找最短路路径的方法. 然后用同样的方法再分头查找.若: (IV)Floyd算法:求任意两顶点间的最短路. 例3: 求下图中加权图的任意两点间的距离与路径. 插入点 v1,得: 矩阵中带“=”的项为经迭代比较以后有变化的元素. 插入点 v2,得: 矩阵中带“=”的项为经迭代比较以后有变化的元素. 插入点 v3,得: 插入点 v4,得: 插入点 v5,得: 插入点 v6,得: 故从v5到v2的最短路为8 由v6向v5追溯: 由v6向v2追溯: 所以从到的最短路径为: 选址问题 1、中心问题 所谓中心选址问题就是在一网络中选择一点,建立公用服务设施,为该网络中的点提供服务,使得服务效率最高。比如一个区域的消防站、自来水厂、学校、变电站、银行、商店等选址。为了提高服务效率,自然的想法是将这些设施建立在中心地点。要求网络中最远的被服务点离服务设施的距离尽可能小。 设网络N有个n点v1,v2,…,vn。dij表示点vi到vj之间的距离(即最短路的长度),并记dii=0(i=1,2,…,n)。 定义1: 记 , 。若 ,则称点vk为网络N的中心,I为直径。 定义2: 令 ,若 ,则称vk为网络N的中心。 例1 某城市要建立一个消防站,为该市所属的七个区服务,如图所示.问应设在哪个区,才能使它至最远区的路径最 短。 S(v1)=10, S(v2)=7, S(v3)=6, S(v4)=8.5, S(v5)=7, S(v6)=7, S(v7)=8.5 S(v3)=6,故应将消防站设在v3处. 例2 教育部门打算在某新建城区建一所学校,让附近七个居民区的学生就近入学。七个居民区之间的道路如下图所示,学校应建在哪个居民区,才能使大家都方便?(图中距离单位:百米)。 2、重心问题 例3 例2中,七个居民区的学生人数分别为:40、25、45、30、20、35、50人,学校应建在哪个居民区,才能使大家都方便?(图中距离单位:百米)。 简易公路建设方案 某合同战术训练基地为保障即将进行的联合军事演习,准备在原有的1个油库的基础上,再设立7个固定的燃料补给点。 v1 v7 v6 v2 v8 v5 v3 v4 油库与补给点的位置如图所示,其中油库位于v1点,补给点位于v2, …, v8点。 经过前期的测绘工作,如果在油库和补给点之间修建简易公路,由于地形不同,每段公路花费如图,每单位费用为1万元。请根据测绘结果,规划一个总造价最低的建设方案。 v1 v7 v6 v2 v8 v5 v3 v4 2 5 7 3 4 3 2 6 4 3 6 1 7 4 1 8 2 总造价最低 各补给点到油库的花费均达到最小 ?

文档评论(0)

70后老哥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档