Ú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. 😉