我根据wiki中给出的伪代码制作了这段代码。仍然有一些错误。请帮助我编写代码并告诉我如何改进它我正在尝试几个小时!我已将我知道的那行标记为错误。休息一下,我不知道我哪里错了
var graph = [{
from: [1, 2, 3, 4],
to: [3, 3, 5, 6]
}];
var shortestpath = function (graph, source) {
for (i in graph) {
dist[i] = infinty;
prev[i] = undefined;
}
dist[source] = 0;
var q = [];
q.push(graph.value);
while (q != 0) {
var min_distance = infinity;
var u = null;
for (var i in dist) {
if (dist[i] < min_distance) {
u = i;
min_distance = dist[u];
}
}
if (dist[u] = infinity) {
break;
}
q.pop(u);
for (v in u) {
var alt = dist[u] + dist_between(u, v);
if (alt < dist[v]) {
dist[v] = alt;
previous[v] = u;
q.sort(v);
}
}
}
return dist;
}
}