Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k...
Transcript of Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k...
![Page 1: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/1.jpg)
Cesty v grafoch
Stanislav Paluch
Fakulta riadenia a informatiky, Zilinska univerzita
21. marca 2020
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 1/51
![Page 2: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/2.jpg)
Sled, t’ah, cesta
Definıcia
Nech G = (V ,H) je graf.
Sled (v1–vk sled) v grafe G je l’ubovol’na alternujuca (striedava)postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, {v1, v2}, v2, {v2, v3}, v3, . . . , {vk−1, vk}, vk). (1)
Tah (v1–vk t’ah) v grafe G je taky v1–vk sled v grafe G, v ktorom saziadna hrana neopakuje.
Cesta (v1–vk cesta) v grafe G je taky v1–vk sled v grafe G, v ktorom saziaden vrchol neopakuje.
Pripust’ame aj tzv. trivialny sled, pre k = 1, t. j. sled tvaru (v1).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 2/51
![Page 3: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/3.jpg)
Sled, t’ah, cesta
Definıcia
Nech G = (V ,H) je graf.
Sled (v1–vk sled) v grafe G je l’ubovol’na alternujuca (striedava)postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, {v1, v2}, v2, {v2, v3}, v3, . . . , {vk−1, vk}, vk). (1)
Tah (v1–vk t’ah) v grafe G je taky v1–vk sled v grafe G, v ktorom saziadna hrana neopakuje.
Cesta (v1–vk cesta) v grafe G je taky v1–vk sled v grafe G, v ktorom saziaden vrchol neopakuje.
Pripust’ame aj tzv. trivialny sled, pre k = 1, t. j. sled tvaru (v1).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 2/51
![Page 4: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/4.jpg)
Sled, t’ah, cesta
Definıcia
Nech G = (V ,H) je graf.
Sled (v1–vk sled) v grafe G je l’ubovol’na alternujuca (striedava)postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, {v1, v2}, v2, {v2, v3}, v3, . . . , {vk−1, vk}, vk). (1)
Tah (v1–vk t’ah) v grafe G je taky v1–vk sled v grafe G, v ktorom saziadna hrana neopakuje.
Cesta (v1–vk cesta) v grafe G je taky v1–vk sled v grafe G, v ktorom saziaden vrchol neopakuje.
Pripust’ame aj tzv. trivialny sled, pre k = 1, t. j. sled tvaru (v1).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 2/51
![Page 5: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/5.jpg)
Sled, t’ah, cesta
Definıcia
Nech G = (V ,H) je graf.
Sled (v1–vk sled) v grafe G je l’ubovol’na alternujuca (striedava)postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, {v1, v2}, v2, {v2, v3}, v3, . . . , {vk−1, vk}, vk). (1)
Tah (v1–vk t’ah) v grafe G je taky v1–vk sled v grafe G, v ktorom saziadna hrana neopakuje.
Cesta (v1–vk cesta) v grafe G je taky v1–vk sled v grafe G, v ktorom saziaden vrchol neopakuje.
Pripust’ame aj tzv. trivialny sled, pre k = 1, t. j. sled tvaru (v1).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 2/51
![Page 6: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/6.jpg)
Orientovany sled, orientovany t’ah, orientovana cesta
Definıcia
Nech−→G = (V ,H) je digraf.
Orientovany sled (orientovany v1–vksled) v digrafe−→G je l’ubovol’na
alternujuca (striedava) postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, (v1, v2), v2, (v2, v3), v3, . . . , (vk−1, vk), vk). (2)
Orientovany t’ah v digrafe−→G je taky orientovany v1–vk sled v digrafe
−→G , v ktorom sa ziadna hrana neopakuje.
Orientovana cesta v digrafe−→G je taky orientovany v1–vk sled v digrafe
−→G , v ktorom sa ziaden vrchol neopakuje.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 3/51
![Page 7: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/7.jpg)
Orientovany sled, orientovany t’ah, orientovana cesta
Definıcia
Nech−→G = (V ,H) je digraf.
Orientovany sled (orientovany v1–vksled) v digrafe−→G je l’ubovol’na
alternujuca (striedava) postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, (v1, v2), v2, (v2, v3), v3, . . . , (vk−1, vk), vk). (2)
Orientovany t’ah v digrafe−→G je taky orientovany v1–vk sled v digrafe
−→G , v ktorom sa ziadna hrana neopakuje.
Orientovana cesta v digrafe−→G je taky orientovany v1–vk sled v digrafe
−→G , v ktorom sa ziaden vrchol neopakuje.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 3/51
![Page 8: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/8.jpg)
Orientovany sled, orientovany t’ah, orientovana cesta
Definıcia
Nech−→G = (V ,H) je digraf.
Orientovany sled (orientovany v1–vksled) v digrafe−→G je l’ubovol’na
alternujuca (striedava) postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, (v1, v2), v2, (v2, v3), v3, . . . , (vk−1, vk), vk). (2)
Orientovany t’ah v digrafe−→G je taky orientovany v1–vk sled v digrafe
−→G , v ktorom sa ziadna hrana neopakuje.
Orientovana cesta v digrafe−→G je taky orientovany v1–vk sled v digrafe
−→G , v ktorom sa ziaden vrchol neopakuje.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 3/51
![Page 9: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/9.jpg)
Polosled, polot’ah, polocesta
Definıcia
Nech−→G = (V ,H) je digraf.
Polosled (v1–vk polosled) v digrafe−→G je l’ubovol’na alternujuca
(striedava) postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk),
v ktorej je kazda hrana hi incidentna s obomi susednymi vrcholmi vi , vi+1
tak, ze jeden z nich je zaciatocnym a druhy koncovym vrcholom hrany h.
Polot’ah (v1–vk polot’ah) v digrafe−→G je taky v1–vk polosled v digrafe
−→G , v ktorom sa ziadna hrana neopakuje.
Polocesta (v1–vk polocesta) v digrafe−→G je taky v1–vk polosled
v digrafe−→G , v ktorom sa ziaden vrchol neopakuje.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 4/51
![Page 10: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/10.jpg)
Polosled, polot’ah, polocesta
Definıcia
Nech−→G = (V ,H) je digraf.
Polosled (v1–vk polosled) v digrafe−→G je l’ubovol’na alternujuca
(striedava) postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk),
v ktorej je kazda hrana hi incidentna s obomi susednymi vrcholmi vi , vi+1
tak, ze jeden z nich je zaciatocnym a druhy koncovym vrcholom hrany h.
Polot’ah (v1–vk polot’ah) v digrafe−→G je taky v1–vk polosled v digrafe
−→G , v ktorom sa ziadna hrana neopakuje.
Polocesta (v1–vk polocesta) v digrafe−→G je taky v1–vk polosled
v digrafe−→G , v ktorom sa ziaden vrchol neopakuje.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 4/51
![Page 11: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/11.jpg)
Polosled, polot’ah, polocesta
Definıcia
Nech−→G = (V ,H) je digraf.
Polosled (v1–vk polosled) v digrafe−→G je l’ubovol’na alternujuca
(striedava) postupnost’ vrcholov a hran tvaru
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk),
v ktorej je kazda hrana hi incidentna s obomi susednymi vrcholmi vi , vi+1
tak, ze jeden z nich je zaciatocnym a druhy koncovym vrcholom hrany h.
Polot’ah (v1–vk polot’ah) v digrafe−→G je taky v1–vk polosled v digrafe
−→G , v ktorom sa ziadna hrana neopakuje.
Polocesta (v1–vk polocesta) v digrafe−→G je taky v1–vk polosled
v digrafe−→G , v ktorom sa ziaden vrchol neopakuje.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 4/51
![Page 12: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/12.jpg)
Sledy, t’ahy, cesty
V anglickej literature sa pre sled, t’ah a cestu pouzıvaju termıny walk,trail a path (avsak nejednotne, podobne ako v nasej slovenskejliterature).
a) b) c)
111 22 2 333
44 4555
6 667 77
Obr.: Sled, t’ah a cesta v grafe.
a) 1–3 sled: (1, {1, 2}, 2, {2, 5}, 5,{5, 6}, 6, {6, 5}, 5, {5, 7}, 7, {7, 6}, 6, {6, 5}, 5, {5, 2}, 2, {2, 3}, 3).
b) 1–3 t’ah: (1, {1, 2}, 2, {2, 5}, 5, {5, 6}, 6, {6, 7}, 7, {7, 5}, 5, {5, 3}, 3).c) 1–3 cesta: (1, {1, 4}, 4, {4, 6}, 6, {6, 7}, 7, {7, 5}, 5, {5, 3}, 3).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 5/51
![Page 13: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/13.jpg)
Sledy, t’ahy, cesty
V anglickej literature sa pre sled, t’ah a cestu pouzıvaju termıny walk,trail a path (avsak nejednotne, podobne ako v nasej slovenskejliterature).
a) b) c)
111 22 2 333
44 4555
6 667 77
Obr.: Sled, t’ah a cesta v grafe.
a) 1–3 sled: (1, {1, 2}, 2, {2, 5}, 5,{5, 6}, 6, {6, 5}, 5, {5, 7}, 7, {7, 6}, 6, {6, 5}, 5, {5, 2}, 2, {2, 3}, 3).
b) 1–3 t’ah: (1, {1, 2}, 2, {2, 5}, 5, {5, 6}, 6, {6, 7}, 7, {7, 5}, 5, {5, 3}, 3).c) 1–3 cesta: (1, {1, 4}, 4, {4, 6}, 6, {6, 7}, 7, {7, 5}, 5, {5, 3}, 3).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 5/51
![Page 14: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/14.jpg)
Sledy, t’ahy, cesty
V anglickej literature sa pre sled, t’ah a cestu pouzıvaju termıny walk,trail a path (avsak nejednotne, podobne ako v nasej slovenskejliterature).
a) b) c)
111 22 2 333
44 4555
6 667 77
Obr.: Sled, t’ah a cesta v grafe.
a) 1–3 sled: (1, {1, 2}, 2, {2, 5}, 5,{5, 6}, 6, {6, 5}, 5, {5, 7}, 7, {7, 6}, 6, {6, 5}, 5, {5, 2}, 2, {2, 3}, 3).
b) 1–3 t’ah: (1, {1, 2}, 2, {2, 5}, 5, {5, 6}, 6, {6, 7}, 7, {7, 5}, 5, {5, 3}, 3).c) 1–3 cesta: (1, {1, 4}, 4, {4, 6}, 6, {6, 7}, 7, {7, 5}, 5, {5, 3}, 3).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 5/51
![Page 15: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/15.jpg)
Sledy, cesty t’ahy
a) b)
11 22 33 44 55 6
Obr.: Orientovana cesta a polocesta v digrafe.
a) 1–5 orientovana cesta: (1, (1, 2), 2, (2, 3), 3, (3, 4), 4, (4, 5), 5).b) 1–6 polocesta: (1, (1, 2), 2, (3, 2), 3, (4, 3), 4, (4, 5), 5, (5, 6), 6).
V prıpadoch, kedy nedojde k nedorozumeniu, pripustıme v grafocha digrafoch namiesto
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk),
aj skrateny zapis sledu v tvare
µ(v1, vk) = (v1, v2, . . . , vk),
stale vsak budeme sled povazovat’ za postupnost’ vrcholov a hran.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 6/51
![Page 16: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/16.jpg)
Sledy, cesty t’ahy
a) b)
11 22 33 44 55 6
Obr.: Orientovana cesta a polocesta v digrafe.
a) 1–5 orientovana cesta: (1, (1, 2), 2, (2, 3), 3, (3, 4), 4, (4, 5), 5).b) 1–6 polocesta: (1, (1, 2), 2, (3, 2), 3, (4, 3), 4, (4, 5), 5, (5, 6), 6).
V prıpadoch, kedy nedojde k nedorozumeniu, pripustıme v grafocha digrafoch namiesto
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk),
aj skrateny zapis sledu v tvare
µ(v1, vk) = (v1, v2, . . . , vk),
stale vsak budeme sled povazovat’ za postupnost’ vrcholov a hran.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 6/51
![Page 17: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/17.jpg)
Sledy, cesty t’ahy
a) b)
11 22 33 44 55 6
Obr.: Orientovana cesta a polocesta v digrafe.
a) 1–5 orientovana cesta: (1, (1, 2), 2, (2, 3), 3, (3, 4), 4, (4, 5), 5).b) 1–6 polocesta: (1, (1, 2), 2, (3, 2), 3, (4, 3), 4, (4, 5), 5, (5, 6), 6).
V prıpadoch, kedy nedojde k nedorozumeniu, pripustıme v grafocha digrafoch namiesto
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk),
aj skrateny zapis sledu v tvare
µ(v1, vk) = (v1, v2, . . . , vk),
stale vsak budeme sled povazovat’ za postupnost’ vrcholov a hran.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 6/51
![Page 18: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/18.jpg)
Sledy, cesty t’ahy
a) b)
11 22 33 44 55 6
Obr.: Orientovana cesta a polocesta v digrafe.
a) 1–5 orientovana cesta: (1, (1, 2), 2, (2, 3), 3, (3, 4), 4, (4, 5), 5).b) 1–6 polocesta: (1, (1, 2), 2, (3, 2), 3, (4, 3), 4, (4, 5), 5, (5, 6), 6).
V prıpadoch, kedy nedojde k nedorozumeniu, pripustıme v grafocha digrafoch namiesto
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk),
aj skrateny zapis sledu v tvare
µ(v1, vk) = (v1, v2, . . . , vk),
stale vsak budeme sled povazovat’ za postupnost’ vrcholov a hran.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 6/51
![Page 19: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/19.jpg)
Uzavrety sled
Definıcia
Sled (polosled, t’ah, polot’ah)
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk)
nazveme uzavrety, ak v1 = vk .Inak sled (polosled, t’ah, polot’ah) µ(v1, vk) nazveme otvoreny.
Poznamka
Uzavretu cestu a polocestu nemozno tymto sposobom definovat’, pretozeby doslo k sporu s poziadavkou, ze jeden vrchol sa v tychto strukturachnesmie vyskytovat’ viackrat.Namiesto uzavretej cesty a polocesty budeme mat’ cyklus a polocyklus.
Presna definıcia tychto pojmov je nasledujuca:
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 7/51
![Page 20: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/20.jpg)
Uzavrety sled
Definıcia
Sled (polosled, t’ah, polot’ah)
µ(v1, vk) = (v1, h1, v2, h2, . . . , vk−1, hk−1, vk)
nazveme uzavrety, ak v1 = vk .Inak sled (polosled, t’ah, polot’ah) µ(v1, vk) nazveme otvoreny.
Poznamka
Uzavretu cestu a polocestu nemozno tymto sposobom definovat’, pretozeby doslo k sporu s poziadavkou, ze jeden vrchol sa v tychto strukturachnesmie vyskytovat’ viackrat.Namiesto uzavretej cesty a polocesty budeme mat’ cyklus a polocyklus.
Presna definıcia tychto pojmov je nasledujuca:
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 7/51
![Page 21: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/21.jpg)
Cyklus (orientovany cyklus, polocyklus)
Definıcia
Cyklus (orientovany cyklus, polocyklus) je netrivialny uzavrety t’ah(orientovany t’ah, polot’ah), v ktorom sa okrem prveho a poslednehovrchola ziaden vrchol nevyskytuje viac nez raz.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 8/51
![Page 22: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/22.jpg)
Zret’azenie sledov
DefinıciaNech
µ(v1, vr ) = (v1, {v1, v2}, v2, {v2, v3}, v3, . . . , {vr−1, vr}, vr ),
µ(w1,ws)= (w1, {w1,w2},w2, {w2,w3},w3, . . . , {ws−1,ws},ws),
nech vr = w1. Zret’azenım sledov µ(v1, vr ), µ(w1,ws) nazveme sled
µ(v1, vr )⊕ µ(w1,ws) =
= (v1, {v1, v2}, v2, . . . , {vr−1, vr}, vr = w1, {w1,w2},w2, . . . , {ws−1,ws},ws).
Zret’azenie orientovanych sledov a polosledov definujeme analogicky.
Poznamka
Zret’azenie µ(u,w)⊕ µ(w , v) dvoch ciest µ(u,w) µ(w , v) nemusı byt’
cesta, vo vseobecnosti mozeme dostat’ sled.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 9/51
![Page 23: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/23.jpg)
Dosiahnutel’nost’
DefinıciaNech G = (V ,H) je graf, resp. digraf, nech u, v ∈ V . Hovorıme, zevrchol v je dosiahnutel’ny z vrchola u v grafe, resp. digrafe G, akv grafe, resp. digrafe G existuje u–v sled, resp. u–v orientovany sled.
Veta
Ak v grafe G = (V ,H) existuje u–v sled pre niektore u, v ∈ V , u 6= v,potom v nom existuje aj u–v cesta.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 10/51
![Page 24: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/24.jpg)
Dosiahnutel’nost’
DefinıciaNech G = (V ,H) je graf, resp. digraf, nech u, v ∈ V . Hovorıme, zevrchol v je dosiahnutel’ny z vrchola u v grafe, resp. digrafe G, akv grafe, resp. digrafe G existuje u–v sled, resp. u–v orientovany sled.
Veta
Ak v grafe G = (V ,H) existuje u–v sled pre niektore u, v ∈ V , u 6= v,potom v nom existuje aj u–v cesta.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 10/51
![Page 25: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/25.jpg)
Dosiahnutel’nost’
DefinıciaNech G = (V ,H) je graf, resp. digraf, nech u, v ∈ V . Hovorıme, zevrchol v je dosiahnutel’ny z vrchola u v grafe, resp. digrafe G, akv grafe, resp. digrafe G existuje u–v sled, resp. u–v orientovany sled.
Veta
Ak v grafe G = (V ,H) existuje u–v sled pre niektore u, v ∈ V , u 6= v,potom v nom existuje aj u–v cesta.
5
6 8
9
4
1110
2
1
37
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 10/51
![Page 26: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/26.jpg)
Suvislost’ grafov
Definıcia
Hovorıme, ze graf G = (V ,H) je suvisly, ak pre kazdu dvojicu vrcholovu, v ∈ V existuje u–v cesta. Inak hovorıme, ze graf G je nesuvisly.
Definıcia
Komponent grafu G = (V ,H) je jeho l’ubovol’ny maximalny suvislypodgraf.
Definıcia
Mostom v grafe G = (V ,H) nazveme taku hranu grafu G, po vylucenıktorej vzrastie pocet komponentov.
Artikulaciou v grafe G nazveme taky vrchol, po vylucenı ktoreho spolus incidentnymi hranami vzrastie pocet komponentov.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 11/51
![Page 27: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/27.jpg)
Suvislost’ grafov
Definıcia
Hovorıme, ze graf G = (V ,H) je suvisly, ak pre kazdu dvojicu vrcholovu, v ∈ V existuje u–v cesta. Inak hovorıme, ze graf G je nesuvisly.
Definıcia
Komponent grafu G = (V ,H) je jeho l’ubovol’ny maximalny suvislypodgraf.
Definıcia
Mostom v grafe G = (V ,H) nazveme taku hranu grafu G, po vylucenıktorej vzrastie pocet komponentov.
Artikulaciou v grafe G nazveme taky vrchol, po vylucenı ktoreho spolus incidentnymi hranami vzrastie pocet komponentov.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 11/51
![Page 28: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/28.jpg)
Suvislost’ grafov
Definıcia
Hovorıme, ze graf G = (V ,H) je suvisly, ak pre kazdu dvojicu vrcholovu, v ∈ V existuje u–v cesta. Inak hovorıme, ze graf G je nesuvisly.
Definıcia
Komponent grafu G = (V ,H) je jeho l’ubovol’ny maximalny suvislypodgraf.
Definıcia
Mostom v grafe G = (V ,H) nazveme taku hranu grafu G, po vylucenıktorej vzrastie pocet komponentov.
Artikulaciou v grafe G nazveme taky vrchol, po vylucenı ktoreho spolus incidentnymi hranami vzrastie pocet komponentov.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 11/51
![Page 29: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/29.jpg)
Suvislost’ grafov
Definıcia
Hovorıme, ze graf G = (V ,H) je suvisly, ak pre kazdu dvojicu vrcholovu, v ∈ V existuje u–v cesta. Inak hovorıme, ze graf G je nesuvisly.
Definıcia
Komponent grafu G = (V ,H) je jeho l’ubovol’ny maximalny suvislypodgraf.
Definıcia
Mostom v grafe G = (V ,H) nazveme taku hranu grafu G, po vylucenıktorej vzrastie pocet komponentov.
Artikulaciou v grafe G nazveme taky vrchol, po vylucenı ktoreho spolus incidentnymi hranami vzrastie pocet komponentov.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 11/51
![Page 30: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/30.jpg)
Typy suvislosti digrafov, komponent grafu
Definıcia
Nech−→G = (V ,H) je digraf.
Povieme, ze digraf−→G je neorientovane suvisly, alebo slabo suvisly,
ak pre kazdu dvojicu vrcholov u, v ∈ V existuje v G u–v polosled;
inak je digraf−→G nesuvisly.
Povieme, ze digraf−→G je orientovane suvisly, alebo jednostranne
suvisly, ak pre kazdu dvojicu vrcholov u, v ∈ V existuje v−→G u–v sled
alebo v–u sled.
Digraf−→G je silne suvisly, ak pre kazdu dvojicu vrcholov u, v ∈ V
existuje aj orientovany u–v sled aj orientovany v–u sled.
Komponent digrafu−→G je maximalny neorientovane suvisly podgraf
digrafu−→G .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 12/51
![Page 31: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/31.jpg)
Typy suvislosti digrafov, komponent grafu
Definıcia
Nech−→G = (V ,H) je digraf.
Povieme, ze digraf−→G je neorientovane suvisly, alebo slabo suvisly,
ak pre kazdu dvojicu vrcholov u, v ∈ V existuje v G u–v polosled;
inak je digraf−→G nesuvisly.
Povieme, ze digraf−→G je orientovane suvisly, alebo jednostranne
suvisly, ak pre kazdu dvojicu vrcholov u, v ∈ V existuje v−→G u–v sled
alebo v–u sled.
Digraf−→G je silne suvisly, ak pre kazdu dvojicu vrcholov u, v ∈ V
existuje aj orientovany u–v sled aj orientovany v–u sled.
Komponent digrafu−→G je maximalny neorientovane suvisly podgraf
digrafu−→G .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 12/51
![Page 32: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/32.jpg)
Typy suvislosti digrafov, komponent grafu
Definıcia
Nech−→G = (V ,H) je digraf.
Povieme, ze digraf−→G je neorientovane suvisly, alebo slabo suvisly,
ak pre kazdu dvojicu vrcholov u, v ∈ V existuje v G u–v polosled;
inak je digraf−→G nesuvisly.
Povieme, ze digraf−→G je orientovane suvisly, alebo jednostranne
suvisly, ak pre kazdu dvojicu vrcholov u, v ∈ V existuje v−→G u–v sled
alebo v–u sled.
Digraf−→G je silne suvisly, ak pre kazdu dvojicu vrcholov u, v ∈ V
existuje aj orientovany u–v sled aj orientovany v–u sled.
Komponent digrafu−→G je maximalny neorientovane suvisly podgraf
digrafu−→G .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 12/51
![Page 33: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/33.jpg)
Typy suvislosti digrafov, komponent grafu
Definıcia
Nech−→G = (V ,H) je digraf.
Povieme, ze digraf−→G je neorientovane suvisly, alebo slabo suvisly,
ak pre kazdu dvojicu vrcholov u, v ∈ V existuje v G u–v polosled;
inak je digraf−→G nesuvisly.
Povieme, ze digraf−→G je orientovane suvisly, alebo jednostranne
suvisly, ak pre kazdu dvojicu vrcholov u, v ∈ V existuje v−→G u–v sled
alebo v–u sled.
Digraf−→G je silne suvisly, ak pre kazdu dvojicu vrcholov u, v ∈ V
existuje aj orientovany u–v sled aj orientovany v–u sled.
Komponent digrafu−→G je maximalny neorientovane suvisly podgraf
digrafu−→G .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 12/51
![Page 34: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/34.jpg)
Typy suvislosti digrafov
a) b) c)
Obr.: Digrafy s roznymi typmi suvislosti.
a) neorientovane suvisly b) orientovane suvisly c) silne suvisly
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 13/51
![Page 35: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/35.jpg)
Tarryho algoritmus
Algoritmus
Tarryho algoritmus na konstrukciu takeho sledu v grafe G = (V ,H), ktoryzacına v l’ubovol’nom vrchole s ∈ V , prejde vsetkymi hranami komponentugrafu G a skoncı vo vrchole s. Vysledny sled budeme volat’ Tarryho sled.
Krok 1. Zacni z l’ubovol’neho vrchola s ∈ V , poloz u := s, T = (u).{T je inicializacne trivialny sled, obsahujuci jediny vrchol.}
Krok 2. Ak mozes, vyber k poslednemu vrcholu u sledu T d’alsiuincidentnu hranu {u, v} podl’a nizsie uvedenych pravidiel T1, T2 a zarad’
ju do sledu T . Zaznac si smer pouzitia hrany {u, v}. Ak doteraz vrchol veste nebol zaradeny do sledu T , oznac hranu {u, v} ako hranu prvehoprıchodu. Pri vybere hrany dodrzuj nasledujuce pravidla:
T1: Kazdu hranu mozno v jednom smere pouzit’ iba razT2: Hranu prveho prıchodu mozno pouzit’, iba ak niet inej moznosti
Krok 3. Ak taka hrana neexistuje – STOP.Inak poloz u := v a pokracuj Krokom 2.
♣
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 14/51
![Page 36: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/36.jpg)
Tarryho algoritmus
Algoritmus
Tarryho algoritmus na konstrukciu takeho sledu v grafe G = (V ,H), ktoryzacına v l’ubovol’nom vrchole s ∈ V , prejde vsetkymi hranami komponentugrafu G a skoncı vo vrchole s. Vysledny sled budeme volat’ Tarryho sled.
Krok 1. Zacni z l’ubovol’neho vrchola s ∈ V , poloz u := s, T = (u).{T je inicializacne trivialny sled, obsahujuci jediny vrchol.}
Krok 2. Ak mozes, vyber k poslednemu vrcholu u sledu T d’alsiuincidentnu hranu {u, v} podl’a nizsie uvedenych pravidiel T1, T2 a zarad’
ju do sledu T . Zaznac si smer pouzitia hrany {u, v}. Ak doteraz vrchol veste nebol zaradeny do sledu T , oznac hranu {u, v} ako hranu prvehoprıchodu. Pri vybere hrany dodrzuj nasledujuce pravidla:
T1: Kazdu hranu mozno v jednom smere pouzit’ iba razT2: Hranu prveho prıchodu mozno pouzit’, iba ak niet inej moznosti
Krok 3. Ak taka hrana neexistuje – STOP.Inak poloz u := v a pokracuj Krokom 2.
♣
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 14/51
![Page 37: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/37.jpg)
Tarryho algoritmus
Algoritmus
Tarryho algoritmus na konstrukciu takeho sledu v grafe G = (V ,H), ktoryzacına v l’ubovol’nom vrchole s ∈ V , prejde vsetkymi hranami komponentugrafu G a skoncı vo vrchole s. Vysledny sled budeme volat’ Tarryho sled.
Krok 1. Zacni z l’ubovol’neho vrchola s ∈ V , poloz u := s, T = (u).{T je inicializacne trivialny sled, obsahujuci jediny vrchol.}
Krok 2. Ak mozes, vyber k poslednemu vrcholu u sledu T d’alsiuincidentnu hranu {u, v} podl’a nizsie uvedenych pravidiel T1, T2 a zarad’
ju do sledu T . Zaznac si smer pouzitia hrany {u, v}. Ak doteraz vrchol veste nebol zaradeny do sledu T , oznac hranu {u, v} ako hranu prvehoprıchodu. Pri vybere hrany dodrzuj nasledujuce pravidla:
T1: Kazdu hranu mozno v jednom smere pouzit’ iba razT2: Hranu prveho prıchodu mozno pouzit’, iba ak niet inej moznosti
Krok 3. Ak taka hrana neexistuje – STOP.Inak poloz u := v a pokracuj Krokom 2.
♣
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 14/51
![Page 38: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/38.jpg)
Tarryho algoritmus
Algoritmus
Tarryho algoritmus na konstrukciu takeho sledu v grafe G = (V ,H), ktoryzacına v l’ubovol’nom vrchole s ∈ V , prejde vsetkymi hranami komponentugrafu G a skoncı vo vrchole s. Vysledny sled budeme volat’ Tarryho sled.
Krok 1. Zacni z l’ubovol’neho vrchola s ∈ V , poloz u := s, T = (u).{T je inicializacne trivialny sled, obsahujuci jediny vrchol.}
Krok 2. Ak mozes, vyber k poslednemu vrcholu u sledu T d’alsiuincidentnu hranu {u, v} podl’a nizsie uvedenych pravidiel T1, T2 a zarad’
ju do sledu T . Zaznac si smer pouzitia hrany {u, v}. Ak doteraz vrchol veste nebol zaradeny do sledu T , oznac hranu {u, v} ako hranu prvehoprıchodu. Pri vybere hrany dodrzuj nasledujuce pravidla:
T1: Kazdu hranu mozno v jednom smere pouzit’ iba razT2: Hranu prveho prıchodu mozno pouzit’, iba ak niet inej moznosti
Krok 3. Ak taka hrana neexistuje – STOP.Inak poloz u := v a pokracuj Krokom 2.
♣
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 14/51
![Page 39: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/39.jpg)
Prıklad
1
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 40: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/40.jpg)
Prıklad
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 41: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/41.jpg)
Prıklad
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 42: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/42.jpg)
Prıklad
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 43: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/43.jpg)
Prıklad
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 44: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/44.jpg)
Prıklad
54
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 45: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/45.jpg)
Prıklad
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 46: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/46.jpg)
Prıklad
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 47: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/47.jpg)
Prıklad
8
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 48: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/48.jpg)
Prıklad
98
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 49: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/49.jpg)
Prıklad
10
98
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 50: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/50.jpg)
Prıklad
11
10
98
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 51: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/51.jpg)
Prıklad
1211
10
98
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 52: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/52.jpg)
Prıklad
13
1211
10
98
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 53: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/53.jpg)
Prıklad
14
13
1211
10
98
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 54: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/54.jpg)
Prıklad
15
14
13
1211
10
98
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 55: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/55.jpg)
Prıklad
16
15
14
13
1211
10
98
7
65
4
3
2
11
2
3 4
5
6
7r {1,2} {1,3} {2,3} {3,4} {4,5} {4,7} {5,6} {5,7} 1 2 3 4 5 6 70 •1 {3,1} ⇐ •2 {1,2} ⇒ •3 {2,3} →4 {3,2} ←5 {2,1} ←6 {1,3} →7 {3,4} ⇒ •8 {4,5} ⇒ •9 {5,6} ⇒ •10 {6,5} ←11 {5,7} ⇒ •12 {7,4} ←13 {4,7} →14 {7,5} ←15 {5,4} ←16 {4,3} ←
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 15/51
![Page 56: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/56.jpg)
Tarry – pridanie hrany ku koncu u sledu s dlzkou dlzka
Tarryho algoritmus je urceny pre grafy, ktore ani nemusia byt’ hranovo ohodnotene.Tu je vyhodne znova pouzit’ reprezentaciu pol’om H[ ][ ], kde hrana {u,v} jereprezentovana dvoma usporiadanymi dvojicami (u,v), aj (v,u), kazda vyuzitel’na nazaznam pouzitia hrany v tomto smere.Tieto dvojice nazvime hranosmermi.Pozor – tento termın puzıvame len sukromne pre ucely nasho programu.
Vyznam udajov v poli H[ ][ ] bude nasledujuci:
H[0][0], H[0 ][1], H[0][2] – nevyuzite, hrana 0 neexistuje.
H[i][0] – zaciatocny vrchol i-teho hranosmeru
H[i][1] – koncovy vrchol i-teho hranosmeru
H[i][2] = 0, ak je i-ty hranosmer este nepouzitny [v smere (H[i][0] , H[i][1])],a sucasne hrana {H[i][0] , H[i][1]} nie je hranou prveho prıchodu.Takyto hranosmer je okamzite pouzitel’ny na rozsırenie T sledu.
H[i][2] = 1, ak je i-ty hranosmer uz pouzity [v smere (H[i][0] , H[i][1] )].Takyto hranosmer je nepouzitel’ny – vid’. pravidlo T1.
H[i][2] = - 1, ak je i-ty hranosmer este nepouzitny [v smere (H[i][0] , H[i][1] )],a sucasne hrana H[i][0] , H[i][1] je hranou prveho prıchodu.Takyto hranosmer je pouzitl’ny, len ak niet inej moznosti– vid’. pravidlo T2.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 16/51
![Page 57: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/57.jpg)
Tarry – pridanie hrany ku koncu u sledu s dlzkou dlzka
Znacky H[i][2] budeme robit’ takto:
Nech i je index hranosmeru (u,v) v poli H[ ][ ], (t. j. H[i][0] = u, H[i][1] =v).
Ak sme zaradili do Tarryho sledu hranu {u,v} v smere (u,v), (t. j. hranosmer i),ako hranu, ktora nie je hranou prveho prıchodu, jej pouzitie v smere (u,v) zapısemepolozenım H[i][2] = 1.
Ak sme zaradili do Tarryho sledu hranu {u,v} v smere (u,v), (t. j. hranosmer i),ako hranu prveho prıchodu,
potom:1. Polozıme H[i][2] = 1, cım, zapıseme ze hranosmer i uz bol pouzity.
2. Musıme zapısat’, ze opacny hranosmer, t. j. hranosmer (v,u) mozno pouzit’,len ak nie inej moznosti.Musıme najst’ index j opacneho hranosmeru (v,u), t. j. najst’ take j,ze H[j][0] = v, H[j][1] = u, a polozit’ H[i][2] = -2.
Takyto index budeme hl’adat’ v intervale < S[v ],S[v + 1]− 1 >,t. j. v cykle for(j = S[v ]; j < S[v + 1]; j ++).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 17/51
![Page 58: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/58.jpg)
Tarry – pridanie hrany ku koncu u sledu s dlzkou dlzkakandidat=0;//Index nepouziteho hranosmeru (u,v) 1. prıchodu ak existuje, inak 0
v=0;// Vrchol, ktorym rozsırime T sled hranou {u,v} v smere (u,v), ktora nie je 1. prıchodu
for(i=S[u]; i<S[u+1]; i++) { //Prezri hranosmery vychadzajuce z u
if (H[i][2] > 0) {continue;}; //Preskoc pouzity hranosmer a d’alej hl’adaj
if (H[i][2] < 0) {kandidat=i;continue;} //Zapamataj index hranosmeru 1. prıchodu a d’alej hl’adaj
//Teraz sme nasli nepouzity hranosmer v smere (u,v), kde v=H[i][1],ktory nie je 1. prıchodu
v = H[i][1];// Teraz v prestava byt’ nulove. Nenulove v znamena pouzitel’ny hranosmer (u,v)
H[i][2] = 1; // Oznac, ze i-ty hranosmer bude pouzity
dlzka = dlzka + 1; // Predlzime dlzku sledu T. dlzka - pocet vrcholov v postupnosti T[ ]
T(dlzka) = v; // Zaradıme vrchol v do sledu T
//Ak vrchol v este nebol objaveny, treba zistit’ index j hranosmeru (v,u) a oznacit’ ho ako
//hranosmer prveho prıchodu -- polozit’ H[j][2] = -1. Treba najst’ j t.z. H[j][0]=v, H[j][1]=u.
if (objaveny[v]=0){hvu=0;//Index, kde je ulozeny hranosmer (v,u) hrany {u,v}objaveny[v]=1;
for(j=S[v]; j<S[v+1]; j++) {if (H[j][1] = u) {H[j][2]=-1;// j je index nepouziteho hranosmeru (v,u) 1.prıchodu
hvu=j; break;}// end if (H[j][1] = u)
}// end for j
if(hvu=0) STOP!!! CHYBA DAT!!!, hrana {u,v} nema ulozeny hranosmer (v,u)!!!!
}// end if (objaveny[v]=0)
break;}// end for i
/* Teraz sme bud’ nasli nepouzitu hranu v smere (u,v), ktora nie je hranou prveho prıchodu, co
je indikovane nenulovym v. Ak v=0, potom takej hrany niet. V tom prıpade nenulovy kandidat
obsahuje index hrany prveho prıchodu, ktora je teraz pouzitel’na. AK kandidat=0, potom uz sled
nemozno predlzit’ a Tarryho algoritmus koncı. */
if (kandidat = 0)&& (v = 0) STOPif (kandidat > 0)&& (v = 0)
{dlzka = dlzka + 1;
v = H[kandidat][1];
T(dlzka) = v;
H[kandidat][2] = 1;}//Hrana (H[kandidat][0],H[kandidat][1]) je pouzita
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 18/51
![Page 59: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/59.jpg)
Dlzka sledu
Definıcia
Nech µ(u, v) je u–v sled (resp. orientovany sled, resp. polosled) v hranovo
ohodnotenom grafe G = (V ,H, c) (resp. digrafe−→G = (V ,H, c)).
Dlzkou sledu (polosledu) µ(u, v) alebo tiez cenou sledu (polosledu)nazveme sucet ohodnotenı jeho hran, pricom ohodnotenie kazdej hranyzapocıtavame tol’kokrat, kol’kokrat sa tato hrana v slede vyskytuje.
Dlzku sledu µ(u, v) budeme znacit’ d(µ(u, v)).
Poznamka
Podl’a definıcie sledu sa pripust’a aj trivialny sled s jedinym vrcholom a ziadnouhranou. Dlzka takehoto sledu je nulova.
Poznamka
Predchadzajucou definıciou je definovana i dlzka t’ahu, orientovaneho t’ahu,cesty, polot’ahu a polocesty, pretoze vsetky tieto pojmy su specialnym prıpadomsledu, resp. polosledu.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 19/51
![Page 60: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/60.jpg)
Dlzka sledu
Definıcia
Nech µ(u, v) je u–v sled (resp. orientovany sled, resp. polosled) v hranovo
ohodnotenom grafe G = (V ,H, c) (resp. digrafe−→G = (V ,H, c)).
Dlzkou sledu (polosledu) µ(u, v) alebo tiez cenou sledu (polosledu)nazveme sucet ohodnotenı jeho hran, pricom ohodnotenie kazdej hranyzapocıtavame tol’kokrat, kol’kokrat sa tato hrana v slede vyskytuje.
Dlzku sledu µ(u, v) budeme znacit’ d(µ(u, v)).
Poznamka
Podl’a definıcie sledu sa pripust’a aj trivialny sled s jedinym vrcholom a ziadnouhranou. Dlzka takehoto sledu je nulova.
Poznamka
Predchadzajucou definıciou je definovana i dlzka t’ahu, orientovaneho t’ahu,cesty, polot’ahu a polocesty, pretoze vsetky tieto pojmy su specialnym prıpadomsledu, resp. polosledu.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 19/51
![Page 61: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/61.jpg)
Dlzka sledu
Definıcia
Nech µ(u, v) je u–v sled (resp. orientovany sled, resp. polosled) v hranovo
ohodnotenom grafe G = (V ,H, c) (resp. digrafe−→G = (V ,H, c)).
Dlzkou sledu (polosledu) µ(u, v) alebo tiez cenou sledu (polosledu)nazveme sucet ohodnotenı jeho hran, pricom ohodnotenie kazdej hranyzapocıtavame tol’kokrat, kol’kokrat sa tato hrana v slede vyskytuje.
Dlzku sledu µ(u, v) budeme znacit’ d(µ(u, v)).
Poznamka
Podl’a definıcie sledu sa pripust’a aj trivialny sled s jedinym vrcholom a ziadnouhranou. Dlzka takehoto sledu je nulova.
Poznamka
Predchadzajucou definıciou je definovana i dlzka t’ahu, orientovaneho t’ahu,cesty, polot’ahu a polocesty, pretoze vsetky tieto pojmy su specialnym prıpadomsledu, resp. polosledu.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 19/51
![Page 62: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/62.jpg)
Dlzka t’ahu, dlzka cesty
Poznamka
Pre t’ah, polot’ah, cestu, a polocestu, (v ktorych sa podl’a ich definıciekazda hrana moze vyskytovat’ len raz), mozeme zjednodusene definovat’:
Dlzka d(µ(u, v)) t’ahu (polot’ahu, cesty alebo polocesty) µ(u, v) je sucetohodnotenı ich hran, t. j.
d(µ(u, v)) =∑
h∈µ(u,v)
c(h).
Poznamka
Casto byva uzitocne definovat’ dlzku sledu µ(u, v) v grafe G = (V ,H),
resp. digrafe−→G = (V ,H), ktory nie je hranovo ohodnoteny, ako pocet
hran sledu µ(u, v). Takto definovana dlzka sledu je totozna s dlzkousledu v hranovo ohodnotenom grafe, (resp. digrafe) G ′ = (V ,H, c), kdec(h) = 1 pre kazdu hranu h ∈ H.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 20/51
![Page 63: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/63.jpg)
Dlzka t’ahu, dlzka cesty
Poznamka
Pre t’ah, polot’ah, cestu, a polocestu, (v ktorych sa podl’a ich definıciekazda hrana moze vyskytovat’ len raz), mozeme zjednodusene definovat’:
Dlzka d(µ(u, v)) t’ahu (polot’ahu, cesty alebo polocesty) µ(u, v) je sucetohodnotenı ich hran, t. j.
d(µ(u, v)) =∑
h∈µ(u,v)
c(h).
Poznamka
Casto byva uzitocne definovat’ dlzku sledu µ(u, v) v grafe G = (V ,H),
resp. digrafe−→G = (V ,H), ktory nie je hranovo ohodnoteny, ako pocet
hran sledu µ(u, v). Takto definovana dlzka sledu je totozna s dlzkousledu v hranovo ohodnotenom grafe, (resp. digrafe) G ′ = (V ,H, c), kdec(h) = 1 pre kazdu hranu h ∈ H.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 20/51
![Page 64: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/64.jpg)
Najkratsia cesta v grafe a digrafe
Definıcia
Najkratsia u-v cesta v hranovo ohodnotenom grafe G = (V ,H, c)
(resp. v hranovo ohodnotenom digrafe−→G = (V ,H, c)) je ta u-v cesta
v G (resp. ta orientovana u-v cesta v−→G ), ktora ma najmensiu dlzku.
Dohoda
Vsetky algoritmy na hl’adanie najkratsej cesty (okrem Floydovhoalgoritmu) budu formulovane pre hranovo ohodnotene digrafy−→G = (V ,H, c), v ktorych sa predpoklada, ze c(h) ≥ 0.
Predpokladame, ze 0 /∈ V .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 21/51
![Page 65: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/65.jpg)
Najkratsia cesta v neorientovanom grafe
Najkratsiu cestu v neorientovanom grafe G = (V ,H, c) najdeme
ako najkratsiu cestu v digrafe−→G = (V ,
−→H ,−→c ), ktorom
−→H je mnozina orientovanych hran obsahujuca pre kazduneorientovanu hranu h = {u, v ∈ H} dvojicu orientovanych hran(u, v), (v , u), obe s rovnakou cenou rovnou c(h) = c({u, v}), t.j.
−→c (u, v) = −→c (v , u) = c(h).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 22/51
![Page 66: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/66.jpg)
Zakladny algoritmus pre hl’adanie najkratsej cesty
AlgoritmusZakladny algoritmus na hl’adanie najkratsıch orientovanych u–v ciestz pevneho vrchola u ∈ V do vsetkych dosiahnutel’nych vrcholov v ∈ V
v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornou cenou hrany c(h)
(a kde 0 /∈ V).
Krok 1. Inicializacia.Pre kazdy vrchol i ∈ V prirad’ dve znacky t(i) a x(i).{Znacka t(i) predstavuje horny odhad dlzky doteraz najdenej najlepseju–i cesty a x(i) jej predposledny vrchol.}Poloz t(u) := 0, t(i) := ∞ pre i ∈ V , i 6= u a x(i) := 0 pre kazde i ∈ V .
Krok 2. Zisti, ci existuje orientovana hrana (i , j) ∈ H, pre ktoru platı
t(j) > t(i) + c(i , j). (3)
Ak taka hrana (i , j) ∈ H existuje, potom poloz
t(j) := t(i) + c(i , j), x(j) := i
a opakuj Krok 2.
Krok 3. Ak taka orientovana hrana (z kroku 2.) neexistuje, STOP. ♣Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 23/51
![Page 67: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/67.jpg)
Zakladny algoritmus pre hl’adanie najkratsej cesty
AlgoritmusZakladny algoritmus na hl’adanie najkratsıch orientovanych u–v ciestz pevneho vrchola u ∈ V do vsetkych dosiahnutel’nych vrcholov v ∈ V
v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornou cenou hrany c(h)
(a kde 0 /∈ V).
Krok 1. Inicializacia.Pre kazdy vrchol i ∈ V prirad’ dve znacky t(i) a x(i).{Znacka t(i) predstavuje horny odhad dlzky doteraz najdenej najlepseju–i cesty a x(i) jej predposledny vrchol.}Poloz t(u) := 0, t(i) := ∞ pre i ∈ V , i 6= u a x(i) := 0 pre kazde i ∈ V .
Krok 2. Zisti, ci existuje orientovana hrana (i , j) ∈ H, pre ktoru platı
t(j) > t(i) + c(i , j). (3)
Ak taka hrana (i , j) ∈ H existuje, potom poloz
t(j) := t(i) + c(i , j), x(j) := i
a opakuj Krok 2.
Krok 3. Ak taka orientovana hrana (z kroku 2.) neexistuje, STOP. ♣Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 23/51
![Page 68: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/68.jpg)
Zakladny algoritmus pre hl’adanie najkratsej cesty
AlgoritmusZakladny algoritmus na hl’adanie najkratsıch orientovanych u–v ciestz pevneho vrchola u ∈ V do vsetkych dosiahnutel’nych vrcholov v ∈ V
v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornou cenou hrany c(h)
(a kde 0 /∈ V).
Krok 1. Inicializacia.Pre kazdy vrchol i ∈ V prirad’ dve znacky t(i) a x(i).{Znacka t(i) predstavuje horny odhad dlzky doteraz najdenej najlepseju–i cesty a x(i) jej predposledny vrchol.}Poloz t(u) := 0, t(i) := ∞ pre i ∈ V , i 6= u a x(i) := 0 pre kazde i ∈ V .
Krok 2. Zisti, ci existuje orientovana hrana (i , j) ∈ H, pre ktoru platı
t(j) > t(i) + c(i , j). (3)
Ak taka hrana (i , j) ∈ H existuje, potom poloz
t(j) := t(i) + c(i , j), x(j) := i
a opakuj Krok 2.
Krok 3. Ak taka orientovana hrana (z kroku 2.) neexistuje, STOP. ♣Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 23/51
![Page 69: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/69.jpg)
Zakladny algoritmus pre hl’adanie najkratsej cesty
AlgoritmusZakladny algoritmus na hl’adanie najkratsıch orientovanych u–v ciestz pevneho vrchola u ∈ V do vsetkych dosiahnutel’nych vrcholov v ∈ V
v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornou cenou hrany c(h)
(a kde 0 /∈ V).
Krok 1. Inicializacia.Pre kazdy vrchol i ∈ V prirad’ dve znacky t(i) a x(i).{Znacka t(i) predstavuje horny odhad dlzky doteraz najdenej najlepseju–i cesty a x(i) jej predposledny vrchol.}Poloz t(u) := 0, t(i) := ∞ pre i ∈ V , i 6= u a x(i) := 0 pre kazde i ∈ V .
Krok 2. Zisti, ci existuje orientovana hrana (i , j) ∈ H, pre ktoru platı
t(j) > t(i) + c(i , j). (3)
Ak taka hrana (i , j) ∈ H existuje, potom poloz
t(j) := t(i) + c(i , j), x(j) := i
a opakuj Krok 2.
Krok 3. Ak taka orientovana hrana (z kroku 2.) neexistuje, STOP. ♣Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 23/51
![Page 70: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/70.jpg)
Zakladny algoritmus pre hl’adanie najkratsej cesty
Najkratsiu u–i cestu zostroj potom spatne pomocou znaciek x(i) akocestu prechadzajucu vrcholmi
i , x(i), x(x(i)), x(x(x(i))), . . . , u
teda tato najkratsia cesta bude mat’ tvar
(u, . . . , x(x(x(i))),(x(x(x(i))), x(x(i))
)
︸ ︷︷ ︸
hrana
, x(x(i)),
(x(x(i)), x(i)
)
︸ ︷︷ ︸
hrana
, x(i),(x(i), i
)
︸ ︷︷ ︸
hrana
, i)
Po zastavenı algoritmu konecna hodnota znacky t(i) predstavuje dlzkunajkratsej u–i cesty pre kazdy vrchol i .
Ak t(i) = ∞, potom vrchol i nie je dosiahnutel’ny z vrchola u.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 24/51
![Page 71: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/71.jpg)
Zapis najkratsej cesty
Dohoda (o znacenı)
Majme pole smernıkov x( ) zıskane niektorym algoritmom najkratsejcesty.Rekurzıvne mozno definovat’ x (k)(j) pre j ∈ V takto
x (1)(j) = x(j)
x (k)(j) = x(x (k−1)(j))
x (k)(j) = x(x(. . . x(︸ ︷︷ ︸
k-krat
j) . . . ))
Potom mozno rovnocenne zapısat’ vrcholy najkratsej u-j cesty v opacnomporadı (t.j. odzadu) takto
j , x (1)(j), x (2)(j), . . . x (k)(j) ≡ u,
najkratsia u-j cesta teda prechadza postupne vrcholmi
u ≡ x (k)(j), x (k−1)(j), . . . , x (2)(j), x (1)(j), j
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 25/51
![Page 72: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/72.jpg)
Princıp zakladneho algoritmu
*Veta
V digrafe−→G = (V ,H, c) s nezapornou cenou hrany sa zakladny
algoritmus zastavı po konecnom pocte krokov.
u
x(j)
t(j)
x(i)
c(i,j)
x[x(i)]x{x[x(i)]}
x[x(j)]x{x[x(j)]}
i
j
t(i)
x(j) − predposledný vrchol tejto cesty
Doteraz najlepsia u−j cesta
t(j) − jej dlzka
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 26/51
![Page 73: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/73.jpg)
Princıp zakladneho algoritmu
*Veta
V digrafe−→G = (V ,H, c) s nezapornou cenou hrany sa zakladny
algoritmus zastavı po konecnom pocte krokov.
tejto cesty x(i) − predposledný vrchol
Doteraz najlepsia u−i cesta
t(i) − jej dlzka
u
x(j)
t(j)
x(i)
c(i,j)
x[x(i)]x{x[x(i)]}
x[x(j)]x{x[x(j)]}
i
j
t(i)
x(j) − predposledný vrchol tejto cesty
Doteraz najlepsia u−j cesta
t(j) − jej dlzka
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 26/51
![Page 74: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/74.jpg)
Princıp zakladneho algoritmu
*Veta
V digrafe−→G = (V ,H, c) s nezapornou cenou hrany sa zakladny
algoritmus zastavı po konecnom pocte krokov.
a to
o hranu (i,j)
Ak t(j) > t(i)+c(i,j),nasli sme lepsiu cestu do j
modrú u−i cestu predlzenú
tejto cesty x(i) − predposledný vrchol
Doteraz najlepsia u−i cesta
t(i) − jej dlzka
u
x(j)
t(j)
x(i)
c(i,j)
x[x(i)]x{x[x(i)]}
x[x(j)]x{x[x(j)]}
i
j
t(i)
x(j) − predposledný vrchol tejto cesty
Doteraz najlepsia u−j cesta
t(j) − jej dlzka
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 26/51
![Page 75: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/75.jpg)
Princıp zakladneho algoritmu
*Veta
V digrafe−→G = (V ,H, c) s nezapornou cenou hrany sa zakladny
algoritmus zastavı po konecnom pocte krokov.
t(j) = t(i) + c(i,j)x(j) = i
Zmeníme znacky takto:
a to
o hranu (i,j)
Ak t(j) > t(i)+c(i,j),nasli sme lepsiu cestu do j
modrú u−i cestu predlzenú
u
x(j)
t(j)
x(i)
c(i,j)
x[x(i)]x{x[x(i)]}
x[x(j)]x{x[x(j)]}
i
j
t(i)
x(j) − predposledný vrchol tejto cesty
Doteraz najlepsia u−j cesta
t(j) − jej dlzka
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 26/51
![Page 76: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/76.jpg)
Princıp zakladneho algoritmu
*Veta
V digrafe−→G = (V ,H, c) s nezapornou cenou hrany sa zakladny
algoritmus zastavı po konecnom pocte krokov.
ux(i)
c(i,j)
x[x(i)]x{x[x(i)]}
t(i)
j t(j) = t(i) + c(i,j)
x(j) = i
t(i)+c(i,j) a predposlednýmvrcholom x(j)=i.
Máme novú zlepsenúu−j cestu s dlzkou
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 26/51
![Page 77: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/77.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
2 4
5
3
1
30
60
30
806
20
90
10
300|
*|
*|*|
*|
*|
150
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 78: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/78.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
0|
*|
*| *|
*| 2 4
5
3
1
30
60
30
806
2010
3030|5
150
90
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 79: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/79.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
90|5 2 4
5
3
1
30
60
30
806
2010
30
90
30|5
150
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 80: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/80.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
2 4
5
3
1
30
60
30
806
2010
3030|5
90
90|5
150
150|5
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 81: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/81.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
2 4
5
3
1
60
30
806
2010
3030|5
90
90|5
150
150|5
30
60|1
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 82: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/82.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
2 4
5
3
1
60
806
2010
3030|5
90
90|5
150
150|5
30
60|1
30 120|2
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 83: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/83.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
2 4
5
3
1
60
806
20
3030|5
150
150|5
30
60|1
30 120|2
10
90|5 70|3
90
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 84: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/84.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
2 4
5
3
1
60
806
3030|5
30
60|1
30
10
70|3 120|2
20
150
120|490
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 85: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/85.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
2 4
5
3
1
60
806
20
3030|5
150
150|5
30
60|1
30
10
70|3120|2100|2
90
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 86: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/86.jpg)
Prıklad. Hl’adanie vsetkych najkratsıch ciest z vrchola 5.
Tabul’ka ohodnotenı hran digrafu−→G
h (1, 3) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6)
c(h) 30 30 10 60 80 20 30 90 150
2 4
5
3
1
60
806
3030|5
30
60|1
30
10
70|3
20
150
120|490
120|2100|2
h = (i , j) t(i) c(h) 1 2 3 4 5 6t(v)|x(v)
- ∞| ∞| ∞| ∞| 0| ∞|(5, 1) 0 30 30|5(5, 2) 0 90 90|5(5, 6) 0 150 150|5
(1, 3) 30 30 60|1(2, 4) 90 30 120|2(3, 2) 60 10 70|3(4, 6) 120 20 140|4
(2, 4) 70 30 100|2(4, 6) 100 20 120|4
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 27/51
![Page 87: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/87.jpg)
Zakladny algoritmus v digrafe−→G = (V ,H , c), |V | = n, |H | = m
input u; /* u -- zaciatocny vrchol z ktoreho budeme pocıtat’
najkratsie cesty do vsetkych ostatnych*/
// INICIALIZACIA
for(i=0, i<= n; i++){x[i] = 0;
t[i] = NEKONECNO;//Hodnotu NEKONECNO volit’ rovne polovici
} //maximalneho zobrazitel’neho cısla
t[u] = 0 ;
while (zlepsenie = 1) {zlepsenie = 0;
for(k=1, k<= m; k++){i = H[k][0];
j = H[k][1];
cij = H[k][2];
if (t[j]>t[i] + cij){t[j] = t[i] + cij;
x[j] = i;
zlepsenie = 1;}}// Koniec cyklu for
}//Koniec while
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 28/51
![Page 88: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/88.jpg)
Dijkstrov algoritmus
AlgoritmusDijkstrov algoritmus Algoritmus pre zostrojenie najkratsej orientovanej
u–v cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornym
ohodnotenım hran (a kde 0 /∈ V ).Krok 1. Inicializacia. Pre kazdy vrchol i ∈ V prirad’ dve znacky t(i)a x(i). Znacky t(i) budu dvojakeho druhu, a to docasne (ktore saeste v priebehu vypoctu mozu zmenit’) a definitıvne (ktore sa uznemozu zmenit’).
Poloz t(u) = 0, t(i) = ∞ pre i ∈ V , i 6= u a x(i) = 0 pre kazdei ∈ V . Zvol’ riadiaci vrchol r := u a znacku t( ) pri vrchole r = uprehlas za definitıvnu, ostatne znacky za docasne.
Krok 2. Ak je r = v, STOP. Ak t(v) < ∞, znacka t(v) predstavujedlzku najkratsej u–v cesty, ktoru zostroj spatne z v pomocousmernıkov x(i). Inak pre vsetky hrany tvaru (r , j) ∈ H, kde j jevrchol s docasnou znackou, urob:
Ak t(j) > t(r) + c(r , j), potom t(j) := t(r) + c(r , j), x(j) := r .
Ponechaj zmenene znacky ako docasne.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 29/51
![Page 89: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/89.jpg)
Dijkstrov algoritmus
AlgoritmusDijkstrov algoritmus Algoritmus pre zostrojenie najkratsej orientovanej
u–v cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornym
ohodnotenım hran (a kde 0 /∈ V ).Krok 1. Inicializacia. Pre kazdy vrchol i ∈ V prirad’ dve znacky t(i)a x(i). Znacky t(i) budu dvojakeho druhu, a to docasne (ktore saeste v priebehu vypoctu mozu zmenit’) a definitıvne (ktore sa uznemozu zmenit’).
Poloz t(u) = 0, t(i) = ∞ pre i ∈ V , i 6= u a x(i) = 0 pre kazdei ∈ V . Zvol’ riadiaci vrchol r := u a znacku t( ) pri vrchole r = uprehlas za definitıvnu, ostatne znacky za docasne.
Krok 2. Ak je r = v, STOP. Ak t(v) < ∞, znacka t(v) predstavujedlzku najkratsej u–v cesty, ktoru zostroj spatne z v pomocousmernıkov x(i). Inak pre vsetky hrany tvaru (r , j) ∈ H, kde j jevrchol s docasnou znackou, urob:
Ak t(j) > t(r) + c(r , j), potom t(j) := t(r) + c(r , j), x(j) := r .
Ponechaj zmenene znacky ako docasne.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 29/51
![Page 90: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/90.jpg)
Dijkstrov algoritmus
AlgoritmusDijkstrov algoritmus Algoritmus pre zostrojenie najkratsej orientovanej
u–v cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornym
ohodnotenım hran (a kde 0 /∈ V ).Krok 1. Inicializacia. Pre kazdy vrchol i ∈ V prirad’ dve znacky t(i)a x(i). Znacky t(i) budu dvojakeho druhu, a to docasne (ktore saeste v priebehu vypoctu mozu zmenit’) a definitıvne (ktore sa uznemozu zmenit’).
Poloz t(u) = 0, t(i) = ∞ pre i ∈ V , i 6= u a x(i) = 0 pre kazdei ∈ V . Zvol’ riadiaci vrchol r := u a znacku t( ) pri vrchole r = uprehlas za definitıvnu, ostatne znacky za docasne.
Krok 2. Ak je r = v, STOP. Ak t(v) < ∞, znacka t(v) predstavujedlzku najkratsej u–v cesty, ktoru zostroj spatne z v pomocousmernıkov x(i). Inak pre vsetky hrany tvaru (r , j) ∈ H, kde j jevrchol s docasnou znackou, urob:
Ak t(j) > t(r) + c(r , j), potom t(j) := t(r) + c(r , j), x(j) := r .
Ponechaj zmenene znacky ako docasne.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 29/51
![Page 91: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/91.jpg)
Dijkstrov algoritmus
Algoritmus ( - pokracovanie)
Krok 3. Zo vsetkych docasne oznacenych vrcholov najdi ten vrcholi , ktory ma znacku t(i) minimalnu.
Znacku pri tomto vrchole i prehlas za definitıvnu a zvol’ za novyriadiaci vrchol r := i .{Pokial’ existuje viac vrcholov s rovnakou minimalnou znackou, akuma vrchol i , za definitıvnu znacku mozeme prehlasit’ len znacku prijednom z tychto vrcholov – ten potom berieme za riadiaci. Na tied’alsie dojde v nasledujucich krokoch vypoctu.}GOTO Krok 2.
♣
PoznamkaAk upravıme podmienku zastavenia v Kroku 2. na podmienku:Ak su znacky vsetkych vrcholov definitıvne, STOP,dostaneme verziu algoritmu, ktora hl’ada najkratsie cesty z vrchola u dovsetkych dosiahnutel’nych vrcholov.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 30/51
![Page 92: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/92.jpg)
Dijkstrov algoritmus
Algoritmus ( - pokracovanie)
Krok 3. Zo vsetkych docasne oznacenych vrcholov najdi ten vrcholi , ktory ma znacku t(i) minimalnu.
Znacku pri tomto vrchole i prehlas za definitıvnu a zvol’ za novyriadiaci vrchol r := i .{Pokial’ existuje viac vrcholov s rovnakou minimalnou znackou, akuma vrchol i , za definitıvnu znacku mozeme prehlasit’ len znacku prijednom z tychto vrcholov – ten potom berieme za riadiaci. Na tied’alsie dojde v nasledujucich krokoch vypoctu.}GOTO Krok 2.
♣
PoznamkaAk upravıme podmienku zastavenia v Kroku 2. na podmienku:Ak su znacky vsetkych vrcholov definitıvne, STOP,dostaneme verziu algoritmu, ktora hl’ada najkratsie cesty z vrchola u dovsetkych dosiahnutel’nych vrcholov.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 30/51
![Page 93: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/93.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 94: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/94.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
∞|−
0|−
∞|−
∞|−
∞|−
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 95: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/95.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
0|−
∞|−
∞|−
∞|−
40|3
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 96: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/96.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
0|−
∞|−
∞|−
40|3 80|3
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 97: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/97.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
0|− ∞|−
40|3 80|3
60|3
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 98: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/98.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
0|− ∞|−
40|3 80|3
60|3
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 99: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/99.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
0|− ∞|−
40|3 80|3
60|3
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 100: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/100.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
∞|−
0|− ∞|−
40|3
60|3
70|2
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 101: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/101.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
0|− ∞|−
40|3 70|2
50|2
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 102: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/102.jpg)
Prıklad
2 4
5
63
1
20
30
30
60
40
30
1080
20
∞|−
0|− ∞|−
40|3 70|2
50|2
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 103: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/103.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
∞|−
0|− ∞|−
40|3 70|2
50|2
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 104: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/104.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
∞|−
40|3 70|2
50|280|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 105: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/105.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
40|3 70|2
50|280|5
70|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 106: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/106.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
40|3 70|2
50|280|5
70|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 107: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/107.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
40|3 70|2
50|280|5
70|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 108: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/108.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
40|3 70|2
50|280|5
70|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 109: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/109.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
40|3 70|2
50|280|5
70|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 110: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/110.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
40|3 70|2
50|280|5
70|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 111: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/111.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
40|3 70|2
50|280|5
70|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 112: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/112.jpg)
Prıklad
51 30
2 4
63
20
30
60
40
30
1080
20
0|−
∞|−
40|3 70|2
50|280|5
70|5
r x(r) t(r) 1 2 3 4 5 6
t(v)|x(v)
- - - ∞| ∞| 0| ∞| ∞| ∞|3 - 0 ∞| 40|3 80|3 60|3 ∞|2 3 40 ∞| 70|2 50|2 ∞|5 2 50 80|5 70|2 70|54 2 70 80|5 70|56 5 70 80|51 5 80
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 31/51
![Page 113: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/113.jpg)
Vypocet matice vzdialenostı
DefinıciaRealna funkcia d definovana na kartezskom sucine V × V sa nazyvametrikou na mnozine V , ak platı:
1 1. Pre kazde u, v ∈ V je d(u, v) ≥ 0 a rovnost’ nastava prave vtedy,ked’ u=v.
2 2. Pre kazde u, v ∈ V platı d(u, v) = d(v , u).
3 3. Pre kazde u, v ,w ∈ V , je d(u,w) ≤ d(u, v) + d(v ,w).
Definıcia
Nech G = (V ,H, c) je suvisly hranovo ohodnoteny graf alebo silnesuvisly digraf, c(h) > 0.Vzdialenost’ vrcholov u, v ∈ V d(u, v) je dlzka najkratsej u–v cesty.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 32/51
![Page 114: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/114.jpg)
Vypocet matice vzdialenostı
DefinıciaRealna funkcia d definovana na kartezskom sucine V × V sa nazyvametrikou na mnozine V , ak platı:
1 1. Pre kazde u, v ∈ V je d(u, v) ≥ 0 a rovnost’ nastava prave vtedy,ked’ u=v.
2 2. Pre kazde u, v ∈ V platı d(u, v) = d(v , u).
3 3. Pre kazde u, v ,w ∈ V , je d(u,w) ≤ d(u, v) + d(v ,w).
Definıcia
Nech G = (V ,H, c) je suvisly hranovo ohodnoteny graf alebo silnesuvisly digraf, c(h) > 0.Vzdialenost’ vrcholov u, v ∈ V d(u, v) je dlzka najkratsej u–v cesty.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 32/51
![Page 115: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/115.jpg)
Vzdialenost’ vrcholov
PoznamkaKed’ze sme pripustili trivialnu u–u cestu (obsahujucu iba vrchol u), ktorejdlzka je nulova, z definıcie vzdialenosti vrcholov vyplyva, ze pre kazdeu ∈ V platı d(u, u) = 0.
Veta
Ak v suvislom grafe G = (V ,H, c) je c(h) > 0 pre kazdu hranu h ∈ H,potom je funkcia vzdialenosti d : V × V → R metrikou na mnozinevrcholov V .
PoznamkaV digrafoch predchadzajuce veta neplatı (nemusı platit’ vzt’ahd(u, v) = d(v , u)).
Poznamka
Ak graf G nie je suvisly, resp. digraf−→G nie je silne suvisly, potom mozno
pre u ∈ V , v ∈ V take, ze v nie je dosiahnutel’ny z u doplnit’ definıciuvzdialenosti tak, ze polozıme d(u, v) = ∞.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 33/51
![Page 116: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/116.jpg)
Vzdialenost’ vrcholov
PoznamkaKed’ze sme pripustili trivialnu u–u cestu (obsahujucu iba vrchol u), ktorejdlzka je nulova, z definıcie vzdialenosti vrcholov vyplyva, ze pre kazdeu ∈ V platı d(u, u) = 0.
Veta
Ak v suvislom grafe G = (V ,H, c) je c(h) > 0 pre kazdu hranu h ∈ H,potom je funkcia vzdialenosti d : V × V → R metrikou na mnozinevrcholov V .
PoznamkaV digrafoch predchadzajuce veta neplatı (nemusı platit’ vzt’ahd(u, v) = d(v , u)).
Poznamka
Ak graf G nie je suvisly, resp. digraf−→G nie je silne suvisly, potom mozno
pre u ∈ V , v ∈ V take, ze v nie je dosiahnutel’ny z u doplnit’ definıciuvzdialenosti tak, ze polozıme d(u, v) = ∞.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 33/51
![Page 117: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/117.jpg)
Vzdialenost’ vrcholov
PoznamkaKed’ze sme pripustili trivialnu u–u cestu (obsahujucu iba vrchol u), ktorejdlzka je nulova, z definıcie vzdialenosti vrcholov vyplyva, ze pre kazdeu ∈ V platı d(u, u) = 0.
Veta
Ak v suvislom grafe G = (V ,H, c) je c(h) > 0 pre kazdu hranu h ∈ H,potom je funkcia vzdialenosti d : V × V → R metrikou na mnozinevrcholov V .
PoznamkaV digrafoch predchadzajuce veta neplatı (nemusı platit’ vzt’ahd(u, v) = d(v , u)).
Poznamka
Ak graf G nie je suvisly, resp. digraf−→G nie je silne suvisly, potom mozno
pre u ∈ V , v ∈ V take, ze v nie je dosiahnutel’ny z u doplnit’ definıciuvzdialenosti tak, ze polozıme d(u, v) = ∞.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 33/51
![Page 118: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/118.jpg)
Vzdialenost’ vrcholov
PoznamkaKed’ze sme pripustili trivialnu u–u cestu (obsahujucu iba vrchol u), ktorejdlzka je nulova, z definıcie vzdialenosti vrcholov vyplyva, ze pre kazdeu ∈ V platı d(u, u) = 0.
Veta
Ak v suvislom grafe G = (V ,H, c) je c(h) > 0 pre kazdu hranu h ∈ H,potom je funkcia vzdialenosti d : V × V → R metrikou na mnozinevrcholov V .
PoznamkaV digrafoch predchadzajuce veta neplatı (nemusı platit’ vzt’ahd(u, v) = d(v , u)).
Poznamka
Ak graf G nie je suvisly, resp. digraf−→G nie je silne suvisly, potom mozno
pre u ∈ V , v ∈ V take, ze v nie je dosiahnutel’ny z u doplnit’ definıciuvzdialenosti tak, ze polozıme d(u, v) = ∞.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 33/51
![Page 119: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/119.jpg)
Polomer, priemer a excentricita grafu
Definıcia
Nech G = (V ,H, c) je hranovo ohodnoteny graf, c(h) > 0. Definujeme:
excentricita vrchola v ∈ V e(v) = max{d(u, v) | u ∈ V }
polomer – radius grafu G r(G ) = min{e(v) | v ∈ V }
priemer – diameter grafu G d(G ) = max{e(v) | v ∈ V }
Kazdy vrchol grafu G s minimalnou excentricitou e(v) nazvemecentralnym vrcholom grafu G, mnozinu vsetkych centralnych vrcholovgrafu nazveme centrom grafu G.
Poznamka
Da sa l’ahko ukazat’, ze pre priemer d(G ) grafu G platı
d(G ) = max{d(u, v) | u ∈ V , v ∈ V }.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 34/51
![Page 120: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/120.jpg)
Polomer, priemer a excentricita grafu
Definıcia
Nech G = (V ,H, c) je hranovo ohodnoteny graf, c(h) > 0. Definujeme:
excentricita vrchola v ∈ V e(v) = max{d(u, v) | u ∈ V }
polomer – radius grafu G r(G ) = min{e(v) | v ∈ V }
priemer – diameter grafu G d(G ) = max{e(v) | v ∈ V }
Kazdy vrchol grafu G s minimalnou excentricitou e(v) nazvemecentralnym vrcholom grafu G, mnozinu vsetkych centralnych vrcholovgrafu nazveme centrom grafu G.
Poznamka
Da sa l’ahko ukazat’, ze pre priemer d(G ) grafu G platı
d(G ) = max{d(u, v) | u ∈ V , v ∈ V }.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 34/51
![Page 121: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/121.jpg)
Floydov algoritmus na vypocet matice vzdialenostı
Algoritmus
Floydov algoritmus na vypocet matice vzdialenostı vrcholov v hranovoohodnotenom grafe, resp. digrafe G = (V ,H, c), kde c(h) ≥ 0.
Krok 1. Zostroj maticu C = (cij), ktorej prvky su definovane nasledovne:
cii = 0 pre vsetky i ∈ V
a pre vsetky i , j , take, ze i 6= j
cij =
{
c(i , j), ak {i , j} ∈ H, resp. (i , j) ∈ H
∞, ak {i , j} /∈ H, resp. (i , j) /∈ H
Zostroj aj maticu X = (xij), kde
xii = i pre vsetky i ∈ V
a pre vsetky i , j , take, ze i 6= j
xij =
{
i , ak {i , j} ∈ H, resp. (i , j) ∈ H
∞, ak {i , j} /∈ H, resp. (i , j) /∈ H
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 35/51
![Page 122: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/122.jpg)
Floydov algoritmus na vypocet matice vzdialenostı
Algoritmus ( - pokracovanie )
Krok 2. Urob pre vsetky k = 1, 2, . . . , n = |V |:Pre vsetky i 6= k take, ze cik 6= ∞, a pre vsetky j 6= k take, ze ckj 6= ∞,urob:Ak cij > cik + ckj , potom poloz:
cij := cik + ckj
xij := xkj♣
Po skoncenı Floydovho algoritmu je matica C maticou vzdialenostı vrcholovgrafu, resp. digrafu G .
Matica X obsahuje pre kazdu dvojicu vrcholov i , j taku, ze j je dosiahnutel’nyz i , predposledny vrchol najkratsej i–j cesty.
Ak potrebujeme najst’ najkratsiu i–j cestu, vyuzijeme maticu smernıkov Xnasledovne:Pre predposledny vrchol j1 najkratsej i–j cesty je j1 = xij . Dalsı vrchol tejtocesty (odzadu) je j2 = xij1 , d’alsı j3 = xij2 atd’., pokial’ nedojdeme do vrchola i .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 36/51
![Page 123: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/123.jpg)
Floydov algoritmus na vypocet matice vzdialenostı
Algoritmus ( - pokracovanie )
Krok 2. Urob pre vsetky k = 1, 2, . . . , n = |V |:Pre vsetky i 6= k take, ze cik 6= ∞, a pre vsetky j 6= k take, ze ckj 6= ∞,urob:Ak cij > cik + ckj , potom poloz:
cij := cik + ckj
xij := xkj♣
Po skoncenı Floydovho algoritmu je matica C maticou vzdialenostı vrcholovgrafu, resp. digrafu G .
Matica X obsahuje pre kazdu dvojicu vrcholov i , j taku, ze j je dosiahnutel’nyz i , predposledny vrchol najkratsej i–j cesty.
Ak potrebujeme najst’ najkratsiu i–j cestu, vyuzijeme maticu smernıkov Xnasledovne:Pre predposledny vrchol j1 najkratsej i–j cesty je j1 = xij . Dalsı vrchol tejtocesty (odzadu) je j2 = xij1 , d’alsı j3 = xij2 atd’., pokial’ nedojdeme do vrchola i .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 36/51
![Page 124: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/124.jpg)
Floydov algoritmus na vypocet matice vzdialenostı
Algoritmus ( - pokracovanie )
Krok 2. Urob pre vsetky k = 1, 2, . . . , n = |V |:Pre vsetky i 6= k take, ze cik 6= ∞, a pre vsetky j 6= k take, ze ckj 6= ∞,urob:Ak cij > cik + ckj , potom poloz:
cij := cik + ckj
xij := xkj♣
Po skoncenı Floydovho algoritmu je matica C maticou vzdialenostı vrcholovgrafu, resp. digrafu G .
Matica X obsahuje pre kazdu dvojicu vrcholov i , j taku, ze j je dosiahnutel’nyz i , predposledny vrchol najkratsej i–j cesty.
Ak potrebujeme najst’ najkratsiu i–j cestu, vyuzijeme maticu smernıkov Xnasledovne:Pre predposledny vrchol j1 najkratsej i–j cesty je j1 = xij . Dalsı vrchol tejtocesty (odzadu) je j2 = xij1 , d’alsı j3 = xij2 atd’., pokial’ nedojdeme do vrchola i .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 36/51
![Page 125: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/125.jpg)
Floydov algoritmus na vypocet matice vzdialenostı
Algoritmus ( - pokracovanie )
Krok 2. Urob pre vsetky k = 1, 2, . . . , n = |V |:Pre vsetky i 6= k take, ze cik 6= ∞, a pre vsetky j 6= k take, ze ckj 6= ∞,urob:Ak cij > cik + ckj , potom poloz:
cij := cik + ckj
xij := xkj♣
Po skoncenı Floydovho algoritmu je matica C maticou vzdialenostı vrcholovgrafu, resp. digrafu G .
Matica X obsahuje pre kazdu dvojicu vrcholov i , j taku, ze j je dosiahnutel’nyz i , predposledny vrchol najkratsej i–j cesty.
Ak potrebujeme najst’ najkratsiu i–j cestu, vyuzijeme maticu smernıkov Xnasledovne:Pre predposledny vrchol j1 najkratsej i–j cesty je j1 = xij . Dalsı vrchol tejtocesty (odzadu) je j2 = xij1 , d’alsı j3 = xij2 atd’., pokial’ nedojdeme do vrchola i .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 36/51
![Page 126: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/126.jpg)
Floydov algoritmus – prıklad
Je dany digraf−→G = (V ,H, c) diagramom z nasledujuceho obrazku.
Vypocıtame maticu vzdialenostı pomocou Floydovho algoritmu.
6
3 4
51
3
7
2
4
2
1 3
5
Obr.: Digraf k prıkladu.
Matica C
1 2 3 4 5
1 0 6 3 2 ∞2 ∞ 0 5 ∞ ∞3 ∞ ∞ 0 ∞ 74 ∞ 3 ∞ 0 45 1 ∞ ∞ ∞ 0
Matica X
1 2 3 4 5
1 1 1 1 1 ∞2 ∞ 2 2 ∞ ∞3 ∞ ∞ 3 ∞ 34 ∞ 4 ∞ 4 45 5 ∞ ∞ ∞ 5
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 37/51
![Page 127: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/127.jpg)
Floydov algoritmus – prıklad
Matica C
1 2 3 4 5
1 0 6 3 2 ∞
2 ∞ 0 5 ∞ ∞3 ∞ ∞ 0 ∞ 74 ∞ 3 ∞ 0 45 1 ∞ ∞ ∞ 0
Matica X
1 2 3 4 5
1 1 1 1 1 ∞
2 ∞ 2 2 ∞ ∞3 ∞ ∞ 3 ∞ 34 ∞ 4 ∞ 4 45 5 ∞ ∞ ∞ 5
Matica Cpo kroku 2 s k = 1
1 2 3 4 5
1 0 6 3 2 ∞2 ∞ 0 5 ∞ ∞
3 ∞ ∞ 0 ∞ 74 ∞ 3 ∞ 0 4
5 1 7 4 3 0
Matica Xpo kroku 2 s k = 1
1 2 3 4 5
1 1 1 1 1 ∞2 ∞ 2 2 ∞ ∞
3 ∞ ∞ 3 ∞ 34 ∞ 4 ∞ 4 4
5 5 1 1 1 5
Matica Cpo kroku 2 s k = 2
1 2 3 4 5
1 0 6 3 2 ∞
2 ∞ 0 5 ∞ ∞
3 ∞ ∞ 0 ∞ 74 ∞ 3 8 0 45 1 7 4 3 0
Matica Xpo kroku 2 s k = 2
1 2 3 4 5
1 1 1 1 1 ∞
2 ∞ 2 2 ∞ ∞
3 ∞ ∞ 3 ∞ 34 ∞ 4 2 4 45 5 1 1 1 5
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 38/51
![Page 128: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/128.jpg)
Floydov algoritmus – prıklad
Matica C
1 2 3 4 5
1 0 6 3 2 ∞
2 ∞ 0 5 ∞ ∞3 ∞ ∞ 0 ∞ 74 ∞ 3 ∞ 0 45 1 ∞ ∞ ∞ 0
Matica X
1 2 3 4 5
1 1 1 1 1 ∞
2 ∞ 2 2 ∞ ∞3 ∞ ∞ 3 ∞ 34 ∞ 4 ∞ 4 45 5 ∞ ∞ ∞ 5
Matica Cpo kroku 2 s k = 1
1 2 3 4 5
1 0 6 3 2 ∞2 ∞ 0 5 ∞ ∞
3 ∞ ∞ 0 ∞ 74 ∞ 3 ∞ 0 4
5 1 7 4 3 0
Matica Xpo kroku 2 s k = 1
1 2 3 4 5
1 1 1 1 1 ∞2 ∞ 2 2 ∞ ∞
3 ∞ ∞ 3 ∞ 34 ∞ 4 ∞ 4 4
5 5 1 1 1 5
Matica Cpo kroku 2 s k = 2
1 2 3 4 5
1 0 6 3 2 ∞
2 ∞ 0 5 ∞ ∞
3 ∞ ∞ 0 ∞ 74 ∞ 3 8 0 45 1 7 4 3 0
Matica Xpo kroku 2 s k = 2
1 2 3 4 5
1 1 1 1 1 ∞
2 ∞ 2 2 ∞ ∞
3 ∞ ∞ 3 ∞ 34 ∞ 4 2 4 45 5 1 1 1 5
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 38/51
![Page 129: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/129.jpg)
Floydov algoritmus – prıklad
Matica C
1 2 3 4 5
1 0 6 3 2 ∞
2 ∞ 0 5 ∞ ∞3 ∞ ∞ 0 ∞ 74 ∞ 3 ∞ 0 45 1 ∞ ∞ ∞ 0
Matica X
1 2 3 4 5
1 1 1 1 1 ∞
2 ∞ 2 2 ∞ ∞3 ∞ ∞ 3 ∞ 34 ∞ 4 ∞ 4 45 5 ∞ ∞ ∞ 5
Matica Cpo kroku 2 s k = 1
1 2 3 4 5
1 0 6 3 2 ∞2 ∞ 0 5 ∞ ∞
3 ∞ ∞ 0 ∞ 74 ∞ 3 ∞ 0 4
5 1 7 4 3 0
Matica Xpo kroku 2 s k = 1
1 2 3 4 5
1 1 1 1 1 ∞2 ∞ 2 2 ∞ ∞
3 ∞ ∞ 3 ∞ 34 ∞ 4 ∞ 4 4
5 5 1 1 1 5
Matica Cpo kroku 2 s k = 2
1 2 3 4 5
1 0 6 3 2 ∞
2 ∞ 0 5 ∞ ∞
3 ∞ ∞ 0 ∞ 74 ∞ 3 8 0 45 1 7 4 3 0
Matica Xpo kroku 2 s k = 2
1 2 3 4 5
1 1 1 1 1 ∞
2 ∞ 2 2 ∞ ∞
3 ∞ ∞ 3 ∞ 34 ∞ 4 2 4 45 5 1 1 1 5
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 38/51
![Page 130: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/130.jpg)
Floydov algoritmus – prıklad
Matica Cpo kroku 2 s k = 3
1 2 3 4 5
1 0 6 3 2 10
2 ∞ 0 5 ∞ 123 ∞ ∞ 0 ∞ 74 ∞ 3 8 0 4
5 1 7 4 3 0
Matica Xpo kroku 2 s k = 3
1 2 3 4 5
1 1 1 1 1 3
2 ∞ 2 2 ∞ 33 ∞ ∞ 3 ∞ 34 ∞ 4 2 4 4
5 5 1 1 1 5
Matica Cpo kroku 2 s k = 4
1 2 3 4 5
1 0 5 3 2 62 ∞ 0 5 ∞ 12
3 ∞ ∞ 0 ∞ 7
4 ∞ 3 8 0 4
5 1 6 4 3 0
Matica Xpo kroku 2 s k = 4
1 2 3 4 5
1 1 4 1 1 42 ∞ 2 2 ∞ 3
3 ∞ ∞ 3 ∞ 3
4 ∞ 4 4 4 4
5 5 4 1 1 5
Matica Cpo kroku 2 s k = 5
1 2 3 4 5
1 0 5 3 2 62 13 0 5 15 123 6 13 0 10 74 5 3 8 0 45 1 6 4 3 0
Matica Xpo kroku 2 s k = 5
1 2 3 4 5
1 1 4 1 1 42 5 2 2 1 33 5 4 3 1 34 5 4 2 4 45 5 4 1 1 5
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 39/51
![Page 131: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/131.jpg)
Floydov algoritmus – prıklad
Matica Cpo kroku 2 s k = 3
1 2 3 4 5
1 0 6 3 2 10
2 ∞ 0 5 ∞ 123 ∞ ∞ 0 ∞ 74 ∞ 3 8 0 4
5 1 7 4 3 0
Matica Xpo kroku 2 s k = 3
1 2 3 4 5
1 1 1 1 1 3
2 ∞ 2 2 ∞ 33 ∞ ∞ 3 ∞ 34 ∞ 4 2 4 4
5 5 1 1 1 5
Matica Cpo kroku 2 s k = 4
1 2 3 4 5
1 0 5 3 2 62 ∞ 0 5 ∞ 12
3 ∞ ∞ 0 ∞ 7
4 ∞ 3 8 0 4
5 1 6 4 3 0
Matica Xpo kroku 2 s k = 4
1 2 3 4 5
1 1 4 1 1 42 ∞ 2 2 ∞ 3
3 ∞ ∞ 3 ∞ 3
4 ∞ 4 4 4 4
5 5 4 1 1 5
Matica Cpo kroku 2 s k = 5
1 2 3 4 5
1 0 5 3 2 62 13 0 5 15 123 6 13 0 10 74 5 3 8 0 45 1 6 4 3 0
Matica Xpo kroku 2 s k = 5
1 2 3 4 5
1 1 4 1 1 42 5 2 2 1 33 5 4 3 1 34 5 4 2 4 45 5 4 1 1 5
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 39/51
![Page 132: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/132.jpg)
Floydov algoritmus – prıklad
Matica Cpo kroku 2 s k = 3
1 2 3 4 5
1 0 6 3 2 10
2 ∞ 0 5 ∞ 123 ∞ ∞ 0 ∞ 74 ∞ 3 8 0 4
5 1 7 4 3 0
Matica Xpo kroku 2 s k = 3
1 2 3 4 5
1 1 1 1 1 3
2 ∞ 2 2 ∞ 33 ∞ ∞ 3 ∞ 34 ∞ 4 2 4 4
5 5 1 1 1 5
Matica Cpo kroku 2 s k = 4
1 2 3 4 5
1 0 5 3 2 62 ∞ 0 5 ∞ 12
3 ∞ ∞ 0 ∞ 7
4 ∞ 3 8 0 4
5 1 6 4 3 0
Matica Xpo kroku 2 s k = 4
1 2 3 4 5
1 1 4 1 1 42 ∞ 2 2 ∞ 3
3 ∞ ∞ 3 ∞ 3
4 ∞ 4 4 4 4
5 5 4 1 1 5
Matica Cpo kroku 2 s k = 5
1 2 3 4 5
1 0 5 3 2 62 13 0 5 15 123 6 13 0 10 74 5 3 8 0 45 1 6 4 3 0
Matica Xpo kroku 2 s k = 5
1 2 3 4 5
1 1 4 1 1 42 5 2 2 1 33 5 4 3 1 34 5 4 2 4 45 5 4 1 1 5
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 39/51
![Page 133: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/133.jpg)
Floydov algoritmus - vysledky prıkladu
6
3 4
51
3
7
2
4
2
1 3
5
i-ty riadok vyslednej matice X obsahuje smernıkypre konstrukcieu vsetkych najkratsıch i-j ciest.
Hl’adajme najkratsiu 3-4 cestu.x3,4 = 1 – predposledny vrchol hl’adanej
cesty je vrchol 1x3,1 = 5 – d’alsı vrchol odzadu je vrchol 5x3,5 = 3 – vrchol 3 je zaciatocny vrchol hl’adanej
cesty
Matica Cpo kroku 2 s k = 5
1 2 3 4 5
1 0 5 3 2 62 13 0 5 15 123 6 13 0 10 74 5 3 8 0 45 1 6 4 3 0
Matica Xpo kroku 2 s k = 5
1 2 3 4 5
1 1 4 1 1 42 5 2 2 1 33 5 4 3 1 34 5 4 2 4 45 5 4 1 1 5
Najkratsia 3-4 cesta je (3, (3, 5), 5, (5, 1), 1, (1, 4), 4) a ma dlzku c3,4 = 10.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 40/51
![Page 134: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/134.jpg)
Label-set a Label-correct implementacia
AlgoritmusLabel-set a Label-correct implementacia algoritmu na hl’adanienajkratsıch orientovanych u–v ciest z pevneho vrchola u ∈ V do vsetkychostatnych vrcholov v ∈ V v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornou cenou orientovanej hrany c(h), kde 0 /∈ V .
Krok 1: Inicializacia.Poloz t(u) := 0, t(i) := ∞ pre i ∈ V , i 6= u a x(i) := 0 pre kazdei ∈ V . Poloz E := {u}.
Krok 2: Vyber r ∈ E , poloz E := E − {r}.Pre vsetky orientovane hrany tvaru (r , j) ∈ H urob:Ak t(j) > t(r) + c(r , j), potom
t(j) := t(r) + c(r , j), x(j) := r , E := E ∪ {j}.
Krok 3: Ak E 6= ∅, chod’ na Krok 2.Ak E = ∅, potom t(i) predstavuje dlzku najkratsej orientovanej u–icesty pre kazdy vrchol i . Najkratsiu orientovanu u–i cestu zostrojpotom spatne pomocou znaciek x(i) ako v predchadzajucich dvochalgoritmoch.
♣Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 41/51
![Page 135: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/135.jpg)
Label-set a Label-correct implementacia
AlgoritmusLabel-set a Label-correct implementacia algoritmu na hl’adanienajkratsıch orientovanych u–v ciest z pevneho vrchola u ∈ V do vsetkychostatnych vrcholov v ∈ V v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornou cenou orientovanej hrany c(h), kde 0 /∈ V .
Krok 1: Inicializacia.Poloz t(u) := 0, t(i) := ∞ pre i ∈ V , i 6= u a x(i) := 0 pre kazdei ∈ V . Poloz E := {u}.
Krok 2: Vyber r ∈ E , poloz E := E − {r}.Pre vsetky orientovane hrany tvaru (r , j) ∈ H urob:Ak t(j) > t(r) + c(r , j), potom
t(j) := t(r) + c(r , j), x(j) := r , E := E ∪ {j}.
Krok 3: Ak E 6= ∅, chod’ na Krok 2.Ak E = ∅, potom t(i) predstavuje dlzku najkratsej orientovanej u–icesty pre kazdy vrchol i . Najkratsiu orientovanu u–i cestu zostrojpotom spatne pomocou znaciek x(i) ako v predchadzajucich dvochalgoritmoch.
♣Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 41/51
![Page 136: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/136.jpg)
Label-set a Label-correct implementacia
AlgoritmusLabel-set a Label-correct implementacia algoritmu na hl’adanienajkratsıch orientovanych u–v ciest z pevneho vrchola u ∈ V do vsetkychostatnych vrcholov v ∈ V v hranovo ohodnotenom digrafe−→G = (V ,H, c) s nezapornou cenou orientovanej hrany c(h), kde 0 /∈ V .
Krok 1: Inicializacia.Poloz t(u) := 0, t(i) := ∞ pre i ∈ V , i 6= u a x(i) := 0 pre kazdei ∈ V . Poloz E := {u}.
Krok 2: Vyber r ∈ E , poloz E := E − {r}.Pre vsetky orientovane hrany tvaru (r , j) ∈ H urob:Ak t(j) > t(r) + c(r , j), potom
t(j) := t(r) + c(r , j), x(j) := r , E := E ∪ {j}.
Krok 3: Ak E 6= ∅, chod’ na Krok 2.Ak E = ∅, potom t(i) predstavuje dlzku najkratsej orientovanej u–icesty pre kazdy vrchol i . Najkratsiu orientovanu u–i cestu zostrojpotom spatne pomocou znaciek x(i) ako v predchadzajucich dvochalgoritmoch.
♣Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 41/51
![Page 137: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/137.jpg)
Label-set a Label-correct implementacia
Ak v druhom kroku posledneho algoritmu vyberame r ∈ E l’ubovol’ne,dostavame implementaciu zakladneho algoritmu,ktoru volame label correct algoritmus.
Ak za prvok r ∈ E vyberame prvok z najmensou znackou t(), potomdostaneme implementaciu Dijkstrovho algoritmu,ktoru volame label set algoritmus.Ak potrebujeme len jednu u-v cestu, label set algoritmus zastavımev okamihu vybratia vrchola v z mnoziny E .
Pre label correct algoritmus je vyhodne organizovat’ E ako zasobnık, prelabel set algoritmus sa E organizuje ako prioritny front, prıpadne akohalda.
Aby sme do zasobnıka, resp. do prioritneho frontu E nevkladali ten istyvrchol viackrat, je vhodne ku kazdemu vrcholu v ∈ V udrziavat’ indikatorhovoriaci, ci vrchol v je v mnozine E .
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 42/51
![Page 138: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/138.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 139: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/139.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 140: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/140.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 141: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/141.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 142: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/142.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 143: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/143.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 144: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/144.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 145: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/145.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 146: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/146.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 147: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/147.jpg)
Label-set a Label-correct implementacia - Prıklad
h (1, 3) (1, 7) (2, 4) (3, 2) (3, 5) (4, 3) (4, 6) (5, 1) (5, 2) (5, 6) (6, 1) (7, 3)c(h) 20 120 30 10 60 80 10 30 90 150 20 40
r t(r) 1 2 3 4 5 6 7t(v)|x(v) mnozina E
- ∞|0 ∞|0 0|0 ∞|0 ∞|0 ∞|0 ∞|0 31. 3 0 10|3 60|3 2 52. 2 10 40|2 5 43. 5 60 90|5 210|5 4 1 64. 4 40 50|4 1 65. 1 90 210|1 6 76. 6 50 70|6 7 17. 7 210 18. 1 70 190|1 79. 7 190
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 43/51
![Page 148: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/148.jpg)
Hl’adanie cyklu zapornej ceny v digrafe
AlgoritmusAlgoritmus na na hl’adanie cyklu zapornej ceny v hranovo ohodnotenom
digrafe−→G = (V ,H, c) so vseobecnou cenou hran.
Krok 1: Inicializacia.Poloz t(i) := 0 pre vsetky i ∈ V a x(i) := 0 pre kazde i ∈ V .
Poloz E := V .
Krok 2: Vyber r ∈ E , poloz E := E − {r}.Pre vsetky orientovane hrany tvaru (r , j) ∈ H urob:Ak t(j) > t(r) + c(r , j), potom
poloz t(j) := t(r) + c(r , j), x(j) := r , E := E ∪ {j} a vyskusaj ci sav postupnosti
x(j), x(x(j)), x(x(x(j))), ...
vyskytuje vrchol j . Ak ano, nasiel si cyklus obsahujuci vrchol j . STOP.
Ak nie, pokracuj krokom 3.
Krok 3: Ak E 6= ∅, chod’ na Krok 2.
Ak E = ∅, STOP, v digrafe−→G neexistuje cyklus. ♣
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 44/51
![Page 149: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/149.jpg)
Hl’adanie cyklu zapornej ceny v digrafe
AlgoritmusAlgoritmus na na hl’adanie cyklu zapornej ceny v hranovo ohodnotenom
digrafe−→G = (V ,H, c) so vseobecnou cenou hran.
Krok 1: Inicializacia.Poloz t(i) := 0 pre vsetky i ∈ V a x(i) := 0 pre kazde i ∈ V .
Poloz E := V .
Krok 2: Vyber r ∈ E , poloz E := E − {r}.Pre vsetky orientovane hrany tvaru (r , j) ∈ H urob:Ak t(j) > t(r) + c(r , j), potom
poloz t(j) := t(r) + c(r , j), x(j) := r , E := E ∪ {j} a vyskusaj ci sav postupnosti
x(j), x(x(j)), x(x(x(j))), ...
vyskytuje vrchol j . Ak ano, nasiel si cyklus obsahujuci vrchol j . STOP.
Ak nie, pokracuj krokom 3.
Krok 3: Ak E 6= ∅, chod’ na Krok 2.
Ak E = ∅, STOP, v digrafe−→G neexistuje cyklus. ♣
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 44/51
![Page 150: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/150.jpg)
Hl’adanie cyklu zapornej ceny v digrafe
AlgoritmusAlgoritmus na na hl’adanie cyklu zapornej ceny v hranovo ohodnotenom
digrafe−→G = (V ,H, c) so vseobecnou cenou hran.
Krok 1: Inicializacia.Poloz t(i) := 0 pre vsetky i ∈ V a x(i) := 0 pre kazde i ∈ V .
Poloz E := V .
Krok 2: Vyber r ∈ E , poloz E := E − {r}.Pre vsetky orientovane hrany tvaru (r , j) ∈ H urob:Ak t(j) > t(r) + c(r , j), potom
poloz t(j) := t(r) + c(r , j), x(j) := r , E := E ∪ {j} a vyskusaj ci sav postupnosti
x(j), x(x(j)), x(x(x(j))), ...
vyskytuje vrchol j . Ak ano, nasiel si cyklus obsahujuci vrchol j . STOP.
Ak nie, pokracuj krokom 3.
Krok 3: Ak E 6= ∅, chod’ na Krok 2.
Ak E = ∅, STOP, v digrafe−→G neexistuje cyklus. ♣
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 44/51
![Page 151: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/151.jpg)
Cyklus zapornej ceny v digrafe
Poznamka
Postupnost’
x(j), x(x(j)), x(x(x(j))), ...
v druhom kroku pocıtame pokial’ sa v nej vyskytne prvok j, alebo takyvrchol k = x(x(. . . x(j) . . . )), pre ktory x(k) = 0.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 45/51
![Page 152: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/152.jpg)
Hl’adanie cyklu zapornej ceny
−40
60
1
10−10
10
4
5
2
3
0|0
0|0
0|0
0|0
0|0
r t(r) 1 2 3 4 5t(v)|x(v) mnozina E
- 0|0 0|0 0|0 0|0 0|0 1 2 3 4 51. 1 0 2 3 4 52. 2 0 3 4 53. 3 0 −40|3 4 54. 4 −40 −50|4 −30|4 5 25. 5 0 26. 2 −50 −40|2 3
x (k)(j) = x(x(. . . x(︸ ︷︷ ︸
k-krat
j) . . . x(j) . . . ))
j x(j) x(2)(j) x(3)(j) x(4)(j) x(5)(j)1. -2. -3. 4 3 04. 2 4 3 04. 5 4 3 05. -6. 3 2 4 3
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 46/51
![Page 153: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/153.jpg)
Hl’adanie cyklu zapornej ceny
−40
60
1
10−10
10
4
5
2
3
0|0
0|0
0|0
0|0
0|0
r t(r) 1 2 3 4 5t(v)|x(v) mnozina E
- 0|0 0|0 0|0 0|0 0|0 1 2 3 4 51. 1 0 2 3 4 52. 2 0 3 4 53. 3 0 −40|3 4 54. 4 −40 −50|4 −30|4 5 25. 5 0 26. 2 −50 −40|2 3
x (k)(j) = x(x(. . . x(︸ ︷︷ ︸
k-krat
j) . . . x(j) . . . ))
j x(j) x(2)(j) x(3)(j) x(4)(j) x(5)(j)1. -2. -3. 4 3 04. 2 4 3 04. 5 4 3 05. -6. 3 2 4 3
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 46/51
![Page 154: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/154.jpg)
Hl’adanie cyklu zapornej ceny
−40
60
1
10−10
10
4
5
2
3
0|0
0|0
0|0
0|0
0|0
r t(r) 1 2 3 4 5t(v)|x(v) mnozina E
- 0|0 0|0 0|0 0|0 0|0 1 2 3 4 51. 1 0 2 3 4 52. 2 0 3 4 53. 3 0 −40|3 4 54. 4 −40 −50|4 −30|4 5 25. 5 0 26. 2 −50 −40|2 3
x (k)(j) = x(x(. . . x(︸ ︷︷ ︸
k-krat
j) . . . x(j) . . . ))
j x(j) x(2)(j) x(3)(j) x(4)(j) x(5)(j)1. -2. -3. 4 3 04. 2 4 3 04. 5 4 3 05. -6. 3 2 4 3
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 46/51
![Page 155: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/155.jpg)
Hl’adanie cyklu zapornej ceny
−40
60
1
10−10
10
4
5
2
3
0|0
0|0
0|0
0|0
−40|3
r t(r) 1 2 3 4 5t(v)|x(v) mnozina E
- 0|0 0|0 0|0 0|0 0|0 1 2 3 4 51. 1 0 2 3 4 52. 2 0 3 4 53. 3 0 −40|3 4 54. 4 −40 −50|4 −30|4 5 25. 5 0 26. 2 −50 −40|2 3
x (k)(j) = x(x(. . . x(︸ ︷︷ ︸
k-krat
j) . . . x(j) . . . ))
j x(j) x(2)(j) x(3)(j) x(4)(j) x(5)(j)1. -2. -3. 4 3 04. 2 4 3 04. 5 4 3 05. -6. 3 2 4 3
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 46/51
![Page 156: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/156.jpg)
Hl’adanie cyklu zapornej ceny
−40
60
1
10−10
10
4
5
2
3
0|0
0|0
−40|3
−50|4
−30|4
r t(r) 1 2 3 4 5t(v)|x(v) mnozina E
- 0|0 0|0 0|0 0|0 0|0 1 2 3 4 51. 1 0 2 3 4 52. 2 0 3 4 53. 3 0 −40|3 4 54. 4 −40 −50|4 −30|4 5 25. 5 0 26. 2 −50 −40|2 3
x (k)(j) = x(x(. . . x(︸ ︷︷ ︸
k-krat
j) . . . x(j) . . . ))
j x(j) x(2)(j) x(3)(j) x(4)(j) x(5)(j)1. -2. -3. 4 3 04. 2 4 3 04. 5 4 3 05. -6. 3 2 4 3
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 46/51
![Page 157: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/157.jpg)
Hl’adanie cyklu zapornej ceny
−40
60
1
10−10
10
4
5
2
3
0|0
0|0
−40|3
−50|4
−30|4
r t(r) 1 2 3 4 5t(v)|x(v) mnozina E
- 0|0 0|0 0|0 0|0 0|0 1 2 3 4 51. 1 0 2 3 4 52. 2 0 3 4 53. 3 0 −40|3 4 54. 4 −40 −50|4 −30|4 5 25. 5 0 26. 2 −50 −40|2 3
x (k)(j) = x(x(. . . x(︸ ︷︷ ︸
k-krat
j) . . . x(j) . . . ))
j x(j) x(2)(j) x(3)(j) x(4)(j) x(5)(j)1. -2. -3. 4 3 04. 2 4 3 04. 5 4 3 05. -6. 3 2 4 3
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 46/51
![Page 158: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/158.jpg)
Hl’adanie cyklu zapornej ceny
−40
60
1
10−10
10
4
5
2
3
0|0
−40|3
−50|4
−30|4
−40|2
r t(r) 1 2 3 4 5t(v)|x(v) mnozina E
- 0|0 0|0 0|0 0|0 0|0 1 2 3 4 51. 1 0 2 3 4 52. 2 0 3 4 53. 3 0 −40|3 4 54. 4 −40 −50|4 −30|4 5 25. 5 0 26. 2 −50 −40|2 3
x (k)(j) = x(x(. . . x(︸ ︷︷ ︸
k-krat
j) . . . x(j) . . . ))
j x(j) x(2)(j) x(3)(j) x(4)(j) x(5)(j)1. -2. -3. 4 3 04. 2 4 3 04. 5 4 3 05. -6. 3 2 4 3
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 46/51
![Page 159: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/159.jpg)
Floyd
Floydov algoritmus 5 (str. 121) mozno tiez modifikovat’ tak, ze v prıpadevseobecneho digrafu najde zaporny cyklus.Stacı v kroku 1. definovat’ zaciatocnu maticu C nasledovne
cij =
{
c(i , j), ak {i , j} ∈ H, resp. (i , j) ∈ H
∞, ak {i , j} /∈ H, resp. (i , j) /∈ H
Matica C ma na rozdiel od standardneho Floydovho algoritmu na hlavnejdiagonale ∞. Matica X je bez zmeny. Krok 2. je rovnaky.Pozor! Treba menit’ aj prvky hlavnej diagonaly!!!
Po ukoncenı prace tohto algoritmu budu prvky cii na diagonale rovnedlzke najkratsieho i–i cyklu.
Ak sa na hlavnej diagonale matice C v priebehu vypoctu Floydovymalgoritmom objavı zaporne cıslo cjj , objavili sme tym cyklus zapornejceny obsahujuci vrchol j .
Tento cyklus urcıme pomocou matice smernıkov X.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 47/51
![Page 160: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/160.jpg)
Prıklad
PrıkladTreba zistit’, ci digraf z nasledujuceho obrazku obsahuje cyklus zapornej ceny.
Zostavıme matice C a X a postupne urobıme Krok 2. Floydovho algoritmu prek = 1, 2, 3.
Vyvoj matıc C a X vidıme postupne v tabul’kach na nasledujucej folii.
Ked’ze v poslednom riadku matice C pre k = 3 su same ∞, pre k = 4 sa uzmatice C a X nezmenia.
3
1
2
4
10
−30
10
10
Obr.: Digraf k prıkladu 1.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 48/51
![Page 161: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/161.jpg)
Prıklad
C
∞ 10 ∞ ∞∞ ∞ 10 ∞-30 ∞ ∞ 10∞ ∞ ∞ ∞
X
- 1 - -- - 2 -3 - - 3- - - -
C po k = 1
∞ 10 ∞ ∞∞ ∞ 10 ∞-30 -20 ∞ 10∞ ∞ ∞ ∞
X po k = 1
- 1 - -- - 2 -3 1 - 3- - - -
C po k = 2
∞ 10 20 ∞∞ ∞ 10 ∞-30 -20 -10 10∞ ∞ ∞ ∞
X po k = 2
- 1 2 -- - 2 -3 1 2 3- - - -
C po k = 3
-10 0 20 30-20 -10 10 20-30 -20 -10 10∞ ∞ ∞ ∞
X po k = 3
3 1 2 33 1 2 33 1 2 3- - - -
Uz po vypocıtanı tretej dvojice tabuliek sa na diagonale matice C objavilo namieste c33 zaporne cıslo -10, co stacı na konstatovanie, ze skumany digrafobsahuje cyklus so zapornou cenou, ktory obsahuje vrchol 3.Tretı riadok matice smernıkov X hovorı, ze predposledny vrchol tohto cyklu jex33 = 2, bezprostredne pred vrcholom 2 lezı na hl’adanom cykle vrchol x32 = 1a pred nım je vrchol x31 = 3, v ktorom sa cyklus uzaviera.Hl’adany cyklus so zapornou cenou je teda
3, (3, 1), 1, (1, 2), 2, (2, 3), 3.
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 49/51
![Page 162: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/162.jpg)
Cesta maximalnej spol’ahlivosti
Definıcia
Majme hranovo ohodnoteny graf G = (V ,H, c) kde ohodnotenie cpredstavuje spol’ahlivost’ hrany (pravdepodobnost’ uspesneho prechoduhranou), t. j. 0 ≤ c(h) ≤ 1.Nech µ(u, v) je u–v cesta.Spol’ahlivost’ s(µ(u, v)) cesty µ(u, v) definujeme:
s(µ(u, v)) =∏
h∈µ(u,v)
c(h) .
u–v cesta maximalnej spol’ahlivosti je ta u–v cesta µ(u, v), ktora mazo vsetkych u–v ciest najvacsiu spol’ahlivost’.
Veta
Nech G = (V ,H, c), kde c(h) > 0 je spol’ahlivost’ hrany h ∈ H.u–v cesta µ(u, v) je cestou maximalnej spol’ahlivosti v grafeG = (V ,H, c) prave vtedy, ak µ(u, v) je najkratsou cestou v grafeG = (V ,H, c), kde pre cenu hrany c platı c(i , j) = − logz (c(i , j)),(kde z > 1).
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 50/51
![Page 163: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/163.jpg)
Cesta maximalnej spol’ahlivosti
Najspol’ahlivejsia u-v cestaCiel’: maximalizovat’
s(µ(u, v)) =∏
h∈µ(u,v)
c(h)
d(µ(u, v)) je maximalne ⇔⇔ log d(µ(u, v)) je maximalne.
Ciel’: maximalizovat’
log s(µ(u, v)) = log∏
h∈µ(u,v)
c(h) =∑
h∈µ(u,v)
log c(h)
∑
h∈µ(u,v)
log c(h) je maximalne ⇔
⇔∑
h∈µ(u,v)
− log c(h) je minimalne.
Ciel’: minimalizovat’∑
h∈µ(u,v)
− log c(h)
Najkratsia u-v cesta
Ciel’: minimalizovat’
d(µ(u, v)) =∑
h∈µ(u,v)
c(h)
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 51/51
![Page 164: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/164.jpg)
Cesta maximalnej spol’ahlivosti
Najspol’ahlivejsia u-v cestaCiel’: maximalizovat’
s(µ(u, v)) =∏
h∈µ(u,v)
c(h)
d(µ(u, v)) je maximalne ⇔⇔ log d(µ(u, v)) je maximalne.
Ciel’: maximalizovat’
log s(µ(u, v)) = log∏
h∈µ(u,v)
c(h) =∑
h∈µ(u,v)
log c(h)
∑
h∈µ(u,v)
log c(h) je maximalne ⇔
⇔∑
h∈µ(u,v)
− log c(h) je minimalne.
Ciel’: minimalizovat’∑
h∈µ(u,v)
− log c(h)
Najkratsia u-v cesta
Ciel’: minimalizovat’
d(µ(u, v)) =∑
h∈µ(u,v)
c(h)
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 51/51
![Page 165: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/165.jpg)
Cesta maximalnej spol’ahlivosti
Najspol’ahlivejsia u-v cestaCiel’: maximalizovat’
s(µ(u, v)) =∏
h∈µ(u,v)
c(h)
d(µ(u, v)) je maximalne ⇔⇔ log d(µ(u, v)) je maximalne.
Ciel’: maximalizovat’
log s(µ(u, v)) = log∏
h∈µ(u,v)
c(h) =∑
h∈µ(u,v)
log c(h)
∑
h∈µ(u,v)
log c(h) je maximalne ⇔
⇔∑
h∈µ(u,v)
− log c(h) je minimalne.
Ciel’: minimalizovat’∑
h∈µ(u,v)
− log c(h)
Najkratsia u-v cesta
Ciel’: minimalizovat’
d(µ(u, v)) =∑
h∈µ(u,v)
c(h)
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 51/51
![Page 166: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/166.jpg)
Cesta maximalnej spol’ahlivosti
Najspol’ahlivejsia u-v cestaCiel’: maximalizovat’
s(µ(u, v)) =∏
h∈µ(u,v)
c(h)
d(µ(u, v)) je maximalne ⇔⇔ log d(µ(u, v)) je maximalne.
Ciel’: maximalizovat’
log s(µ(u, v)) = log∏
h∈µ(u,v)
c(h) =∑
h∈µ(u,v)
log c(h)
∑
h∈µ(u,v)
log c(h) je maximalne ⇔
⇔∑
h∈µ(u,v)
− log c(h) je minimalne.
Ciel’: minimalizovat’∑
h∈µ(u,v)
− log c(h)
Najkratsia u-v cesta
Ciel’: minimalizovat’
d(µ(u, v)) =∑
h∈µ(u,v)
c(h)
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 51/51
![Page 167: Cesty v grafoch · ˇziadna hrana neopakuje. Cesta (v 1–v k cesta) v grafe G je tak´y v 1–v k sled v grafe G, v ktorom sa ˇziaden vrchol neopakuje. Pripu´ˇst’ame aj tzv.](https://reader033.fdocument.pub/reader033/viewer/2022060523/60537b1c12130656f76a5a96/html5/thumbnails/167.jpg)
Cesta maximalnej spol’ahlivosti
Najspol’ahlivejsia u-v cestaCiel’: maximalizovat’
s(µ(u, v)) =∏
h∈µ(u,v)
c(h)
d(µ(u, v)) je maximalne ⇔⇔ log d(µ(u, v)) je maximalne.
Ciel’: maximalizovat’
log s(µ(u, v)) = log∏
h∈µ(u,v)
c(h) =∑
h∈µ(u,v)
log c(h)
∑
h∈µ(u,v)
log c(h) je maximalne ⇔
⇔∑
h∈µ(u,v)
− log c(h) je minimalne.
Ciel’: minimalizovat’∑
h∈µ(u,v)
− log c(h)
Najkratsia u-v cesta
Ciel’: minimalizovat’
d(µ(u, v)) =∑
h∈µ(u,v)
c(h)
Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Cesty v grafoch 51/51