我正在研究Dijkstra的算法,我真的需要找到所有可能的最短路径,而不仅仅是一条路径.我正在使用邻接矩阵,我应用了Dijkstra算法,我可以找到最短路径.但我需要找到具有最低成本的所有路径,我的意思是所有可能的解决方案,如果存在的话.
对于单个解决方案,这就是我的算法的工作方式:
public void dijkstra( int graph[][] )
{
int d[] = new int[ graph.length ];
int dC[] = new int[ graph.length ];
int p[] = new int[ graph.length ];
for( int i = 0; i < graph.length; i++ ){
d[ i ] = 100; dC[ i ] = 100; p[ i ] = -1;
}
d[ 0 ] = 0; dC[ 0 ] = 0;
int i = 0, min = 200, pos = 0; //You can change the …Run Code Online (Sandbox Code Playgroud)