Commits vergleichen
2 Commits
6baec1d7dd
...
224ab4a97d
| Autor | SHA1 | Datum | |
|---|---|---|---|
| 224ab4a97d | |||
| 5363dd1a89 |
1 geänderte Dateien mit 7 neuen und 3 gelöschten Zeilen
|
|
@ -78,11 +78,15 @@ public class DijkstraAlgorithm extends ShortestPathAlgorithm {
|
||||||
// Si le noeud n'a pas déjà était rajouté au tas, on le rajoute
|
// Si le noeud n'a pas déjà était rajouté au tas, on le rajoute
|
||||||
// isReached permet de vérifier en complexité O(1)
|
// isReached permet de vérifier en complexité O(1)
|
||||||
// C'est un léger coût en mémoire pour un gain en vitesse
|
// C'est un léger coût en mémoire pour un gain en vitesse
|
||||||
if (!successor.isReached()) {
|
if (successor.isReached()) {
|
||||||
tas.insert(successor);
|
// removing then inserting resorts the binary heap
|
||||||
|
tas.remove(successor);
|
||||||
|
} else {
|
||||||
successor.markReached();
|
successor.markReached();
|
||||||
notifyNodeReached(successor.getNode());
|
notifyNodeReached(successor.getNode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tas.insert(successor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -106,7 +110,7 @@ public class DijkstraAlgorithm extends ShortestPathAlgorithm {
|
||||||
// current node and add it to the path
|
// current node and add it to the path
|
||||||
if (parent_label != null) {
|
if (parent_label != null) {
|
||||||
for (Arc arc : parent_label.getNode().getSuccessors()) {
|
for (Arc arc : parent_label.getNode().getSuccessors()) {
|
||||||
if (arc.getDestination().getId() == current_label.getNode().getId()) {
|
if (arc.getDestination().getId() == current_label.getNode().getId() && data.isAllowed(arc)) {
|
||||||
arcs_path.add(arc);
|
arcs_path.add(arc);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Laden …
In neuem Issue referenzieren