1919public class DijkstrasAlgorithm <T > implements SearchAlgorithm <T > {
2020
2121 @ Override
22- public List <T > findPath (final Graph <T > graph , T source , T target ) {
23- final var queue = new LinkedList <T >();
24- final var distances = new HashMap <T , Double >();
25- final var previous = new HashMap <T , T >();
22+ public List <T > findPath (Graph <T > graph , T source , T target ) {
23+ var queue = new LinkedList <T >();
24+ var distances = new HashMap <T , Double >();
25+ var previous = new HashMap <T , T >();
2626 queue .add (source );
2727 distances .put (source , .0 );
2828
2929 while (!queue .isEmpty ()) {
30- final var prev = queue .removeFirst ();
30+ var prev = queue .removeFirst ();
3131 graph .edges (prev ).forEach ((node , time ) -> {
32- final var distance = distances .get (prev ) + time .doubleValue ();
32+ var distance = distances .get (prev ) + time .doubleValue ();
3333 if (distance < distances .getOrDefault (node , Double .MAX_VALUE )) {
3434 previous .put (node , prev );
3535 distances .put (node , distance );
@@ -38,7 +38,7 @@ public List<T> findPath(final Graph<T> graph, T source, T target) {
3838 });
3939 }
4040 if (previous .containsKey (target ) || source .equals (target )) {
41- final var path = new LinkedList <T >();
41+ var path = new LinkedList <T >();
4242 iterate (target , Objects ::nonNull , previous ::get ).forEach (path ::addFirst );
4343 return path ;
4444 }
0 commit comments