diff --git a/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.java b/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.java index 4f3b05b..7307095 100644 --- a/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.java +++ b/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.java @@ -47,16 +47,14 @@ public class DijkstraAlgorithm extends ShortestPathAlgorithm { for (Label l : List){ if (l.getSommet()==y){ if(!l.isMarque()){ - double cout = l.getCost(); - System.out.println("c = " + cout); Boolean changé = false; - l.setCost(Math.min(l.getCost(), x.getCost()+suivant.getLength())); - System.out.println("l = " + l.getCost()); - System.out.println("x = " + x.getCost()); - if(cout != l.getCost()){ + if (x.getCost()+data.getCost(suivant) < l.getCost()){ + changé = true; + } + if(changé){ if (arcs.size() < i ){ System.out.println("arc"); - }else if (cout < arcs.get(i-1).getLength()){ + }else if (l.getCost() < arcs.get(i-1).getLength()){ arcs.remove(i-1); } Tas.insert(l); @@ -64,7 +62,7 @@ public class DijkstraAlgorithm extends ShortestPathAlgorithm { arcs.add(suivant); l.setMarque(true); } - + l.setCost(Math.min(l.getCost(), x.getCost()+suivant.getLength())); } } } diff --git a/be-graphes-algos/target/classes/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.class b/be-graphes-algos/target/classes/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.class index bc3aca7..cf598b0 100644 Binary files a/be-graphes-algos/target/classes/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.class and b/be-graphes-algos/target/classes/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.class differ