教材:《离散数学》第2版 屈婉玲 耿素云 张立昂 高等教育出版社
源文档高清截图在最后
15.3 最短路问题、中国邮递员问题与货郎担问题
1、设图G(V, E),给定W:E→R,对G的每一条边e,称W(e)为边e的权,把这样的图G称为带权图,记为G(V, E, W)或G = <V, E, W>或G = (V, E, W)。当e = (u, v)(或<u, v>)时,也可以把W(e)记作W(u, v)。
2、设P是G的一条通路,P中所有边的边权之和称为P的长度W§。类似定义回路C的长度W©。
3、设带权图G(V, E, W),且每一条边的权都是非负实数。对任意u,v∈V,当u和v连通(u可达v)时,称从u到v长度最短的路径为u到v的最短路径,该路径的长度称作距离d(u, v)。约定d(u, u) = 0,当u不可达v时d(u, v) = ∞。
4、Dijkstra算法
输入:带权图G(V, E, W)和s∈V,其中|V| = n,对任意e∈E,W(e)≥0。
输出:s到G中每一个点的最短路径及距离。
记每一个顶点的标号L(v) = (L1(v), L2(v))。标号分为永久标号和临时标号。对永久标号,L1(v)和L2(v)分别是:s到v的最短路径上v的前一个顶点;s到v的距离。对临时标号,L1(v)和L2(v)分别是:当前从s经过已永久标号的点到达v的最短路上v的前一个顶点;这条路径的长度。
【1】L(s) = (s, 0),L(v) = (s, +∞)&