Dijkstr单元最短路径
来源:互联网 发布:z3735 ubuntu 编辑:程序博客网 时间:2024/06/16 16:50
package com.alo.offer;/** * 解决单元最短路径问题 * @author Administrator * */public class Dijkstra {static final int MAX=Integer.MAX_VALUE; public static void main(String[] args) { // TODO Auto-generated method stub int[][] weight = {//邻接矩阵 {0,1,4,4},{MAX,0,1,2},{MAX,MAX,0,MAX},{MAX,MAX,MAX,0} }; int start=0; int[] shortPath = dijkstar(weight,start); for(int i = 0;i < shortPath.length;i++) System.out.println("从"+(start+1)+"出发到"+(i+1)+"的最短距离为:"+shortPath[i]); }public static int[] dijkstar(int [][]weight,int start) {int n = weight.length;int [] shortPath = new int[n]; //存放start到各顶点的最短距离int [] visited = new int[n];shortPath[start]=0;visited[start]=1;for(int i=1;i<n;i++) {int min = MAX;int k=-1;for(int j=0;j<n;j++) {if(visited[j]==0&&min>weight[start][j]) {min = weight[start][j];k = j;}}shortPath[k]=min;visited[k]=1;for(int j=0;j<n;j++) {if(visited[j]==0&&weight[k][j]!=MAX&&weight[start][k]+weight[k][j]<weight[start][j]) {weight[start][j]=weight[start][k]+weight[k][j];}}}return shortPath;}}
阅读全文
0 0
- Dijkstr单元最短路径
- Dijkstr 最短路径算法
- 单元最短路径
- 单元最短路径
- 单元最短路径问题
- Bellman-Ford求解单元最短路径
- Dijkstra单元最短路径算法
- 单元最短路径——Dijkstra
- 单元最短路径:迪杰斯特拉算法
- 单元最短路径--SPFA算法
- 单元最短路径问题Dijkstra算法
- 单元最短路径问题 分支界限法
- eoj1817 dijkstra单元最短路径 普通方法+二叉堆优化
- 最短路径算法
- 最短路径算法
- 最短路径理解
- 最短路径算法
- 最短路径算法
- 从本地安装Eclipse插件详解
- 2017智慧树人类与生态文明答案单元测试答案
- css初始化
- 滑动菜单DrawerLayout详解(实时更新,未完待续...)
- linux下java开发环境大全
- Dijkstr单元最短路径
- 无法打开**,因为此版本的应用程序不支持其项目类型(.vcproj)
- RunLoop使用
- TensorFlow中关于pad函数的详细理解
- C++定义理解
- linux+vsCode+makefile -- 调试C
- Android上JAVA Socket通信解析(一)初识socket通信
- 不要小看Word中的这4个小技巧,全会的是大神!
- windows git 提示 warning: LF will be replaced by CRLF 的解决方法