关注
import java.util.ArrayList;import java.util.LinkedList;import java.util.Scanner; public class Main { public static void main(String[] args) { new Main().solve(); } private void solve() {
Scanner scanner = new Scanner(System.in);
int n = 6;
int adj[][] = new int[n][n];
for (int i = 0; i < n; i++) {
String[] strings= scanner.nextLine().split(" ");
for (int j = 0; j < n; j++) {
adj[i][j] =Integer.valueOf(strings[j]);
}
}
Graph graph = new Graph(adj);
graph.bfs(0);
}
static class Graph {
int[][] adj;
int nVerts;
boolean[] visited;
private Graph(int[][] adj) {
this.adj = adj;
this.nVerts = adj.length;
this.visited = new boolean[nVerts];
}
private void bfs(int start) {
int[] dis=new int[nVerts];
for (int i = 0; i < nVerts; i++) {
dis[i]=Integer.MAX_VALUE;
}
visited[start] = true;
LinkedList<Integer> queue = new LinkedList<>();
queue.add(start);
dis[start]=0;
while (!queue.isEmpty()) {
int v = queue.remove();
ArrayList<Integer> vs;
vs =getNextVertex(v);
for (Integer v1:vs){
int distance=adj[v][v1];
if (distance+dis[v]<dis[v1])
dis[v1]=distance+dis[v];
if (!visited[v1]) {
queue.add(v1);
visited[v1] = true;
}
}
}
for (int i = 0; i <nVerts; i++) {
if (i!=0){
System.out.println(dis[i]);
}
}
}
private ArrayList<Integer> getNextVertex(int v) {
ArrayList<Integer> adjVs = new ArrayList<>();
for (int i = 0; i < adj.length; i++) {
if (i!=v&&adj[v][i] != -1)
adjVs.add(i);
}
return adjVs;
}
}}
查看原帖
点赞 1
相关推荐
牛客热帖
正在热议
# 25届秋招总结 #
438609次浏览 4471人参与
# 春招别灰心,我们一人来一句鼓励 #
41050次浏览 519人参与
# 北方华创开奖 #
107084次浏览 595人参与
# 地方国企笔面经互助 #
7869次浏览 18人参与
# 实习,投递多份简历没人回复怎么办 #
2453105次浏览 34838人参与
# 虾皮求职进展汇总 #
111870次浏览 875人参与
# 阿里云管培生offer #
119245次浏览 2217人参与
# 实习必须要去大厂吗? #
55473次浏览 959人参与
# 投递实习岗位前的准备 #
1195448次浏览 18542人参与
# 你投递的公司有几家约面了? #
33143次浏览 188人参与
# 双非本科求职如何逆袭 #
661550次浏览 7389人参与
# 机械人春招想让哪家公司来捞你? #
157553次浏览 2267人参与
# 发工资后,你做的第一件事是什么 #
12275次浏览 60人参与
# 工作中,努力重要还是选择重要? #
35356次浏览 384人参与
# 参加完秋招的机械人,还参加春招吗? #
20032次浏览 240人参与
# 实习想申请秋招offer,能不能argue薪资 #
39158次浏览 314人参与
# 非技术岗是怎么找实习的 #
155817次浏览 2120人参与
# 校招入职后的感受 #
162309次浏览 1982人参与
# 找工作,你会甘心进小厂还是猛冲大厂 #
145930次浏览 1601人参与
# 机械求职避坑tips #
24666次浏览 255人参与
# 工作两年想退休了 #
56896次浏览 732人参与
# 找实习多的是你不知道的事 #
1310387次浏览 18369人参与