我正在研究一个巨大的光网络项目,其中网络表示为可能存在循环的无向图。在某些时候,我想找到图中两个节点之间代表任意光学连接的所有最小跳跃路径。我成功地实现了所有边的权重为 1 的 Djikstra,以找到最小跳跃路径而不是最小权重,并修改了松弛步骤以保存节点的所有父节点而不是一个节点(添加代码以在距离相等而不是更小时保存)。所以现在在下面的示例网络中,我从节点 0 到节点 4:节点 1 有父节点 0,节点 2 有父节点 0,节点 3 有父节点 1,2,节点 4 有父节点 3。每个节点组合都是一个对象单元在二维数组中,每个单元格的许多属性之一是其父级列表(即在单元格 0 中搜索父级,
0 ---- 1
| |
2 ---- 3 --- 4
现在我被困住了。我想以某种方式保存从图中所有源到所有目的地的所有最小跳路径,这样我就可以为任何可能的任意连接提供最小跳路径。你能推荐一个解决方案吗?我已经为此工作了好几天,但我真的被困住了。先感谢您。