DIJKSTRA- ALGORITMUS
A Dijkstra-algoritmus egy mohó algoritmus, amivel irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó, véges gráfokban lehet megkeresni a legrövidebb utakat egy adott csúcspontból kiindulva. Az algoritmust Edsger Wybe Dijkstra holland informatikus fejlesztette ki.
Feladat Adott egy G =(V,E) élsúlyozott, irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó, véges gráf. Továbbá adott egy s ∈ V forrás (kezdőcsúcs). Határozzuk meg, ∀ v ∈ V csúcsra, s-ből vben vezető legrövidebb utat és annak hosszát.
Megoldás az algoritmussal Mindegyik – s kezdőcsúcstól különböző – csúcsnak végtelenre (#) állítjuk a kezdeti legrövidebb út értékét. Kiszámítjuk az s csúcs szomszédjaihoz vezető utak hosszát, átállítjuk az út értékét, majd a legrövidebbet választva tovább megyünk a következő csúcsra. Természetesen, ha egy csúcs éréke nagyobb mint amivel az adott útról odajutnánk, azt átállítjuk.
a bc d ef 0 ∞ ∞ ∞ ∞ ∞ Piros él: Amelyen a következő csúcsba haladunk Narancssárga él: Ahol aktuálisan érték változás történt
a bc d ef ∞ ∞ ∞
a bc d ef ∞ ∞
a bc d ef ∞
a bc d ef
a bc d ef
a bc d ef
a bc d ef