如何为Dijkstra算法输入这个问题

问题描述 投票:0回答:1

我有一个关于Dijkstra算法的作业,但是这个问题让我对输入感到困惑。它要求我找到最短路径和第二最短路径,这部分我已经弄明白了,但我如何从图开始,这让我很困扰。问题说输入要从一个文件中读取,文件中包含节点数和两个节点之间的权重。两个节点之间的权重应该是1到9,可以用0表示不存在的路径,现在我的问题是文件的内容必须是什么?我能够理解Dijkstra的算法,其中输入是一个代表图的二维数组。谁能澄清一下这个问题的预期是什么?比如源文件应该包含什么内容。

algorithm graph-algorithm dijkstra
1个回答
0
投票

你可能应该创建这样的文件:(例子--有很多方法可以做)

4   # number of nodes (from 1 to 4)
1 2 3   # means edge from node 1 to node 2 with weight 3
2 3 1   # means edge from node 2 to node 3 with weight 1
...

这将对应于这样的二维矩阵。

0 3 0 0
0 0 1 0
0 0 0 0
0 0 0 0
© www.soinside.com 2019 - 2024. All rights reserved.