实际上,我想知道 prim 和 Dijkstra 算法的含义。如果有人可以教如何用 JAVA 编写它,我将不胜感激。我试图理解某人的 prim 算法代码,但我卡在了某个地方。
下面显示的代码是一个随机矩阵。我想继续编写 prim 的算法。有没有人可以帮忙?
import java.util.*;
class RandomGraph
{
public static Scanner br = new Scanner(System.in);
static int w [][];
static int n;
static int i, j;
public static void main (String[] args)
{
System.out.println("Find the shortest edge");
System.out.println("\nEnter the number of the vertices: ");
n = br.nextInt();
w = new int[n+1][n+1];
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{
if((i!=j))
{
w[i][j] = w[j][i]= 1+(int)(Math.random()*9);
}
else if(i == j)
{
w[i][j] = w[j][i] = 0;
}
}
Graph();
}
static void Graph()
{
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
System.out.print(" "+w[i][j]+" ");
}
System.out.println();
}
}
}