一、如图所示,某城市有一条小河,河中间有8 座小岛(图中分别用 I A I_A IA 至 I H I_H IH 表示)。为了方便市民出行,拟在两岸(河北岸用 N N N 表示,河南岸用 S S S 表示)之间建立一条通路,因此需要在这些小岛之间或者小岛与河岸之间建设桥梁。已知有 18 18 18 处可以建设桥梁的候选地址(图中分别用 B 1 B_1 B1 至 B 18 B_{18} B18 表示),以及各处建设桥梁所需要的费用(图中用桥旁边的数字表示费用,单位:百万元,例如:建设桥 B 1 B_1 B1 需要3 百万元)。在这些候选地址中,选择在哪几处建设桥梁可以构建出一条(只建一条)两岸的通路,且使用的费用最少?最少需要的费用是多少?需要写出分析的思路和过程。
-
建立模型:将该题的河南岸 S S S 、河北岸 N N N 、8座小岛 I A I_A IA 到 I H I_H IH 分别等价为十个顶点,将每座桥等价为连接十个点的边,将每座桥的建设费用等价为边的权重。则该图可看做一个带权无向图,该问题的求解可以转换为求从源 S S S 出发的单源最短路径问题。
-
令 p p p 为 S ∼ N S\sim N S∼N 的路径,则路径长度为:
w ( p ) = ∑ ( u , v ) ∈ p w ( u , v ) w(p)=\sum_{(u,v)\in p}w(u,v) w(p)=(u,v)∈p∑w(u,v) -
对于 S ∼ N S\sim N S∼
-