java使用迪杰斯特拉(Dijkstra)最短路径算法获取最短路径并将路径打印出来
import java.util.HashSet;
import java.util.Set;
import java.util.Stack;
public class Main{
public static void main(String[] args){
//创建顶点名称,获取方便后面打印路径
String[] vexs={
"A","B1","B2","B3","C1","C2","C3","D1","D2","E"};
int len=vexs.length;
int[][] graph=creat_Graph(len);
//path记录路径
int[] path=new int[len];
//vex代表源点
dijkstra(graph,path,len,0);
//u代表起点,v代表终点
print_road(path,vexs,len,0,9);
}
public static void print_road(int[] path,String[] vexs,int len,int u,int v){
// 逆序输出
// System.out.print(vexs[v]+"-->");
// int p=v;
// while(path[p]!=-1){
// System.out.print(vexs[path[p]]+"-->");
// p=path[p];
// }