最短路径问题
广度优先搜索查找最短路径只是对无权图而言的。图是带权图时,把从一个顶点v0到图中其余任意一个顶点vi的一条路径(可能不止一条)所经过边上的权值之和,定义为该路径的带权路径长度,把带权路径长度最短的那条路径称为最短路径。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210609222736542.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzE0ODY0,size_16,color_FFFFFF,t_70#pic_center)
BFS求无权图的单源最短路径
求解最短路径的算法通常都依赖于一种性质,即两点之间的最短路径也包含了路径上其他顶点间的最短路径。带权有向图G的最短路径问题一般可分为两类:一是单源最短路径,即求图中某一顶点到其他各顶点的最短路径,可通过经典的Dijkstra 算法求解;二是求每对顶点间的最短路径,可通过Floyd-Warshall算法来求解。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210609222917825.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzE0ODY0,size_16,color_FFFFFF,t_70#pic_center)
代码实现