【发布时间】:2012-10-29 01:21:30
【问题描述】:
所以我正在编写 Dijkstra 算法的 JavaScript 实现。
我从Wikipedia page 中阅读了很多内容,它帮助我将这些步骤转化为代码。我还阅读了this Stack Overflow question,这是我的问题的一部分。
从A出发,唯一的路径是B,这给了我们
O => AB = 12;
O => C = 7
C 现在是最小距离,是新的当前节点
O => CD = 8
由于 D 是目的地且 8
您如何将这一决定落实到代码中?现在,我的脚本基于哪个节点来选择哪些节点与当前节点相邻,是否每个决策都需要通过这种新的评估来运行?
顺便说一句,here 是我的(凌乱的)代码。
【问题讨论】:
-
您的代码看起来有点乱,因为您没有为
currentEdge和currentNeighbor使用局部变量。此外,您应该首先找出哪个(c1或c2)是邻居节点,然后对其应用条件而不是重复该 if 语句。还没有往下看……
标签: javascript graph-theory dijkstra