我有一本代表起点和终点的字典,例如:
{
0: [1,3],
1: [0,2],
2: [1],
3: [0,1,2],
}
键代表原点(或源)顶点,值代表每个原点的目的地。我需要计算该键的值中每个键与每个顶点之间的最短路径和距离。
例如,以顶点3为原点,我需要计算之间的最短路径和距离3->0, 3->1 and 3->2
。
到目前为止,我已经使用图形工具shortest_path和shortest_distance方法通过嵌套的for循环实现了这一目标,但我相信必须有一种更有效的方法来实现这一目标。
我还尝试通过遍历所返回的边缘来获取shortest_distance shortest_path
,但是尽管该shortest_distance
方法接受目标列表,但shortest_path
并不能。
我想到了。通过设置pred_map=True
在shortest_distance
,你可以用来作为参数传递给前任 mapshortest_path
,从而避免重新计算路径。