1、单源最短路径问题的问题提出是,计算带权有向图G =(V, E)中一个点(源点)到其余各顶点的最短路径长度,如下图所示。设源点为顶点1,采用Dijkstra算法求下图中源V0为到其余各顶点的最短路径。
1)将算法编程实现, 并将程序与运算结果截屏填写入实验结果。
package test;
public class twelve {
static float[][] a = {
{
0,0,0,0,0,0,0},
{
0,0,3,4,Float.MAX_VALUE,Float.MAX_VALUE,Float.MAX_VALUE},
{
0,Float.MAX_VALUE,0,1,9,4,Float.MAX_VALUE},
{
0,Float.MAX_VALUE,Float.MAX_VALUE,0,5,13,Float.MAX_VALUE},
{
0,Float.MAX_VALUE,Float.MAX_VALUE,Float.MAX_VALUE,0,Float.MAX_VALUE,8},
{
0,Float.MAX_VALUE,Float.MAX_VALUE,Float.MAX_VALUE,12,0,10},
{
0,Float.MAX_VALUE,Float.MAX_VALUE,Float.MAX_VALUE,Float.MAX_VALUE,Float.MAX_VALUE,0}
};
// static float[][] a = {
// {0,0,0,0,0,0},
// {0,0,10,Float.MAX_VALUE,30,100},
// {0,Float.MAX_VALUE,0,50,Float.MAX_VALUE,Float.MAX_VALUE},
// {0,Float.MAX_VALUE,Float.MAX_VALUE,0,Float.MAX_VALUE,10},
// {0,Float.MAX_VALUE,Float.MAX_VALUE,20,0,60},
// {0,Float.MAX_VALUE,Float.MAX_VALUE,Float.MAX_VALUE,Float.MAX_VALUE,0}
// };
static int n = a.length-1;
static float[] dist = new float[n+1];
static int[] prev = new int[n+1];
public static void main