844 B
844 B
Úloha minimální cesty
Algoritmus: Minimální cesta z vrcholu x
do vrcholu y
- E. W. Dijkstra.
- Vstup: ohodnocený orientovaný graf
\vec{G}
, vrcholyx
ay
.
- Vrcholu
x
přiřaď trvalou hodnotut(x) = 0
, ostatním vrcholům dočasnou hodnotu\infty
- horní hranice délky. - Je-li
u
poslední vrchol. jemuž byla přiřazena trvalá hodnotat(u)
, pak všem vrcholůmv
, pro něž(u, v) \in E(\vec{G})
a které ještě nemají trvalou hodnotu, přiřaď novou dočasnou hodnotud(v) = min\{ d(v), t(u) + w(u, v) \}
- Pro vrchol
w
s nejmenší dočasnou hodnotou položt(w) = d(w)
. - Má vrchol
y
trvalou hodnotu? Pokud ne, jdi na krok 2. Pokud ano,t(y)
je délka minimální cesty zx
doy
, konec.
Poznámka: Hrany, na nichž w(x, y) = t(y) - t(x)
určují minimální cestu.