我自己的问题:
设 G 是一个有 n 个顶点和 m 个边的无向图。
我们有一个从 v_1 到 v_2 的列表,但现在它并不重要。
每条边的权重等于 X。
我们的任务是找到从 v_i 到 v_j 的最快路径为 w = 2X 的所有对 (v_i, v_j)。
(看例子)
有可能比 brute v * dikstra 或 v*v?? 这个问题能在 O(n^2) 时间内解决吗?哪种算法最好?感谢您的每一个帮助。
例子:
n = m = 5
v_1 -> v_2 -> v_3 -> v_4 -> v_5 and v_1 -> v_3
解决方案:
(1,4), (2,4), (3,5)
图片:http: //i.stack.imgur.com/rVhee.gif
从 v_1 到 v_4 的最短路径是 2X(与其他解决方案相同)。
编辑:我们有邻接列表。