Úloha 6.3
Napíšte program, zdrojový kód, v jazyku C++ použitím štandardu C++17, ktorý realizuje nasledovnú činnosť.
Implementujte ováhovanú grafovú štruktúru na ktorej následne implementujte algoritmus vyhľadania najkratšej cesty medzi dvomi vrcholmi grafu a to pomocou Dijkstra algoritmu.
Implementáciu grafu zvoľte podľa vlastného uváženia.
Výstup algoritmu môže byť vektor vzdialeností od začiatočného vrchol od všetkých ostatných vrcholov grafu. Skúste upraviť/implementovať algoritmus tak aby ste vrátili aj postupnosť vrcholov, ktorá predstavuje najkratšiu cestu.
Príklady vstupov / výstupov programu
Pre graf na diagrame:
(0)--1--(1)
| /
5 2
| /
(2)
|
3
|
(3)
Je výstup pre začiatočný vrchol 0 nasledovný:
0: 0
1: 1
2: 3
3: 6
kde sú vypísané najkratšie vzdialenosti od vrcholu 0 k ostatným.
Rozbaľ pre ukážku riešenia
Musím si počkať kým sa tu objaví príklad riešenia.
Nezabudni, že najviac sa naučíš ak to vypracuješ sám. 😉