文章目录
![在这里插入图片描述](https://img-blog.csdnimg.cn/13fd88af77e14432b879c064d8655d96.jpg?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Lmd5biI5YWE,size_20,color_FFFFFF,t_70,g_se,x_16)
1.概述
弗洛伊德(Floyd)算法介绍
-
和Dijkstra算法一 样,弗洛伊德(Floyd)算法也是一种用
于寻找给定的加权图中项点间最短路径的算法。该算
法名称以创始人之一、1978年图灵奖获得者、斯坦福
大学计算机科学系教授罗伯特.弗洛伊德命名 -
弗洛伊德算法(Floyd)计算图中各个顶点之间的最短路
径 -
迪杰斯特拉算法用于计算图中某一一个顶点到其他项点
的最短路径。 -
弗洛伊德算法VS迪杰斯特拉算法:迪杰斯特拉算
法通过选定的被访问项点,求出从出发访问顶点到其
他项点的最短路径;弗洛伊德算法中每一一个顶点都是
出发访问点,所以需要将每- -个顶点看做被访问顶点,
求出从每一个项点到其他顶点的最短路径
。
2.图解
弗洛伊德(Floyd)算法图解分析
-
设置顶点vi到顶点vk的最短路径已知为Lik,顶点vk到vj的最短路径已知为Lkj,顶点vi到vj的路径为Lj,则vi到vj的 最短路径为: min((Lik+Lkj),Lj), vk的取值为图中所有顶点,则可获得vi到vj的最短路径