这是一个学校项目; 我遇到了很多麻烦,我似乎无法找到一个可以理解的解决方案.
a b c d e z
a - 2 3 - - -
b 2 - - 5 2 -
c 3 - - - 5 -
d - 5 - - 1 2
e - 2 5 1 - 4
z - - - 2 4 -
Run Code Online (Sandbox Code Playgroud)
这是二维数组.因此,如果你想找到最短的路径,它来自a,b,e,d,z = 7,和(a,b)=(b,a) - 它会带你到行的相邻的新行路径
有没有人可以帮助我为这个例子实现Dijkstra的算法?我真的很感激.(我似乎最喜欢数组,地图和集合让我感到困惑,列表是可管理的 - 虽然我愿意在这一点上研究任何类型的解决方案)
[至少我不只是从网上扯下来源.我其实想学习这些东西......这真的很难(>.<)]
哦,起点是A,终点是Z.
和大多数人一样,我没有发现算法的概念很难 - 我只能看到编码正确...请帮忙吗?
示例代码 - 一位朋友帮我解决了这个问题(虽然它充满了我觉得难以理解的数据结构)我还尝试过改编来自dreamincode.net/forums/blog/martyr2/index.php的C++代码吗? showentry = 578进入java,但这并没有那么顺利......
import java.util.*;
public class Pathy{
private static class pathyNode{
public final …Run Code Online (Sandbox Code Playgroud)