Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2014
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.15 KB | None | 0 0
  1. public void wyswietlSciezke(Wierzcholek zrodlo, Wierzcholek cel) {
  2. inicjalizujOdleglosc(zrodlo);
  3. kolejka.add(zrodlo);
  4. while (!kolejka.isEmpty()) {
  5. Wierzcholek w = kolejka.poll();
  6. for (Wierzcholek sąsiad : w.sąsiedzi) {
  7. Double newValue = new Double(getKrawedz(w, sąsiad).getWeight());
  8. if ((odleglosc.get(w)+newValue)<(odleglosc.get(sąsiad))) {
  9. Double oldValue=odleglosc.get(sąsiad);
  10. odleglosc.replace(sąsiad, oldValue, newValue);
  11. w.distance=newValue;
  12. sąsiad.poprzednik=w;
  13. kolejka.add(sąsiad);
  14. }
  15. }
  16. }
  17.  
  18. String droga="";
  19. droga += zrodlo.naJakiejUlicyLezy.get(0) + " -> " + cel.naJakiejUlicyLezy.get(0) + " najnizszy koszt: "+odleglosc.get(cel)+ " km"+ "\n";
  20. droga += "Sciezka: " + zrodlo.naJakiejUlicyLezy.get(0);
  21.  
  22. boolean done = false;
  23. Wierzcholek current = cel;
  24. String s = "";
  25.  
  26. while(!done){
  27. if(current.poprzednik != null){
  28. current = current.poprzednik;
  29. s = " -> "+current.naJakiejUlicyLezy.get(0)+s;
  30. } else done = true;
  31. }
  32.  
  33. droga +=s + " -> "+cel.naJakiejUlicyLezy.get(0);
  34. System.out.println(droga);
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement