Dijkstra的算法找到最加权的路径
|
我只想确保这行得通。您能使用Dijkstra算法找到最大的路径吗?您是否必须先将距离初始化为类似于-1的距离,然后更改Relax子例程以检查其是否更大?
这是针对不会带来任何负面影响的问题。
这实际上是问题所在:
假设您得到一个电话网络图,它是一个图
G的顶点表示开关中心,并且其边缘表示通信
两个中心之间的线。边缘以其最低带宽标记
带宽边缘。给出一个算法,给定一个图和两个开关居中
和b,将输出a和b之间路径的最大带宽。
这行得通吗?
编辑:
我确实发现了这一点:
提示:基本子例程与Dijkstra中的放松子例程非常相似。
假设我们有一条边(u,v)。如果min {d [u],w(u,v)}> d [v],那么我们应该更新
d [v]到min {d [u],w(u,v)}(因为从a到u再到v的路径具有带宽
min {d [u],w(u,v)},比我们目前拥有的要多)。
但是,由于初始化时所有距离都是无限的,因此无法完全确定这是什么意思。所以,我不知道这将如何工作。有什么线索吗?
没有找到相关结果
已邀请:
6 个回复
纫合峭
而不是
的值。
芜任亮蜡
这可能不是计算带宽的最有效方法,但是我现在可以想到。
搂腹时
纤洞需匪
艰管垮淮
亥套惟间连