问题描述
当有人使用ArrayList来实现带有邻接列表表示的加权图时,我感到困惑。例如,在https://www.geeksforgeeks.org/dijkstras-shortest-path-algorithm-in-java-using-priorityqueue/中,代码为
List<List<Node> > adj = new ArrayList<List<Node> >();
// Initialize list for every node
for (int i = 0; i < V; i++) {
List<Node> item = new ArrayList<Node>();
adj.add(item);
}
// Inputs for the DPQ graph
adj.get(0).add(new Node(1,9));
adj.get(0).add(new Node(2,6));
adj.get(0).add(new Node(3,5));
adj.get(0).add(new Node(4,3));
adj.get(2).add(new Node(1,2));
adj.get(2).add(new Node(3,4));
我想
adj.get(0).add(new Node(1,9));
应该是
adj.get(0).add(new Node(1,4));
因为边缘0和1之间的权重是4,而不是9。
我错过了什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)