Algorytm Dijkstry Podano graf Zdefiniowano jego listę sąsiedztwa 1 2 3 4 5 6 7 8 2 5 4 NULL 1 5 8 3 NULL 7 7 3 5 7 6 8 7 1 8 7 NULL 2 8 1 2 7 1 4 6 20 8 14 5 14 3 NULL 7 5 1 4 8 3 7 6 3 7 2 NULL 4 3 6 20 3 8 4 20 5 3 NULL 3 1 5 2 8 7 NULL 2 3 3 7 4 14 7 NULL
7 7 3 Węzeł 1 2 3 4 5 6 7 8 K 0 0 P -1 O 2 8 1 2 7 5 14 3 7 5 1 4 8 4 3 6 20 Węzeł 1 2 3 4 5 6 7 8 K 1 0 P brak -1 O Start: Określenie węzła startowego -> s=1, Ustawienie koloru wierzchołka s na 1, Ustawienie poprzenika s na brak, Ustawienie odległości do wierzchołka s na 0.
Z wszystkich wierzchołków szarych wybieramy ten do którego dotychczasowa droga byłą najkrótsza. Z listy sąsiedztwa tego wierzchołka analizujemy drogi do wszystkich nie czarnuch wierzchołków 7 7 3 Węzeł 1 2 3 4 5 6 7 8 K 1 0 P brak -1 O 2 8 1 2 7 5 14 3 7 5 1 4 8 4 3 6 20 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 1 0 P brak -1 O 5 4 5 14 3 7 5 1 4 8 4 3 6 20
Z wszystkich wierzchołków szarych wybieramy ten do którego dotychczasowa droga byłą najkrótsza. Z listy sąsiedztwa tego wierzchołka analizujemy drogi do wszystkich nie czarnuch wierzchołków 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 1 0 P brak -1 O 5 4 5 14 3 7 5 1 4 8 4 3 6 20 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 1 0 2 P brak -1 4 O 5 4 24 18 5 14 3 7 5 1 4 8 4 3 6 20
Z wszystkich wierzchołków szarych wybieramy ten do którego dotychczasowa droga byłą najkrótsza. Z listy sąsiedztwa tego wierzchołka analizujemy drogi do wszystkich nie czarnuch wierzchołków 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 1 0 2 P brak -1 4 O 5 4 24 18 5 14 3 7 5 1 4 8 4 3 6 20 Suma drogi do węzła 8 przez węzeł 2 jest krótsza (droga do węzła 2 wynosi 5 -> czyli 5+3 = 8) od obecnie wyznaczonej dlatego następuje relaksacja krawędzi. 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 0 1 P brak -1 4 O 5 4 24 8 5 14 3 7 5 1 4 8 4 3 6 20
Z wszystkich wierzchołków szarych wybieramy ten do którego dotychczasowa droga byłą najkrótsza. Z listy sąsiedztwa tego wierzchołka analizujemy drogi do wszystkich nie czarnuch wierzchołków 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 0 1 P brak -1 4 O 5 4 24 8 5 14 3 7 5 1 4 8 4 3 6 20 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 1 0 P brak 8 -1 4 O 5 15 4 24 5 14 3 7 5 1 4 8 4 3 6 20
Z wszystkich wierzchołków szarych wybieramy ten do którego dotychczasowa droga byłą najkrótsza. Z listy sąsiedztwa tego wierzchołka analizujemy drogi do wszystkich nie czarnuch wierzchołków 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 1 0 P brak 8 -1 4 O 5 15 4 24 5 14 3 7 5 1 4 8 4 3 6 20 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 1 P brak 8 3 O 0 5 15 4 22 23 5 14 3 7 5 1 4 8 4 3 6 20
Z wszystkich wierzchołków szarych wybieramy ten do którego dotychczasowa droga byłą najkrótsza. Z listy sąsiedztwa tego wierzchołka analizujemy drogi do wszystkich nie czarnuch wierzchołków 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 1 P brak 8 3 O 0 5 15 4 22 23 5 14 3 7 5 1 4 8 4 3 6 20 Suma drogi do węzła 5 przez węzeł 7 jest krótsza (droga do węzła 7 wynosi 15 -> czyli 15+2 = 17) od obecnie wyznaczonej dlatego następuje relaksacja krawędzi. 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 1 P brak 8 7 3 O 0 5 15 4 17 23 5 14 3 7 5 1 4 8 4 3 6 20
Z wszystkich wierzchołków szarych wybieramy ten do którego dotychczasowa droga byłą najkrótsza. Z listy sąsiedztwa tego wierzchołka analizujemy drogi do wszystkich nie czarnuch wierzchołków 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 1 P brak 8 7 3 O 0 5 15 4 17 23 5 14 3 7 5 1 4 8 4 3 6 20 Suma drogi do węzła 6 przez węzeł 5 jest krótsza (droga do węzła 5 wynosi 17 -> czyli 17+3 = 20) od obecnie wyznaczonej dlatego następuje relaksacja krawędzi. 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 P brak 1 8 7 O 0 5 15 4 17 20 5 14 3 7 5 1 4 8 4 3 6 20
Z wszystkich wierzchołków szarych wybieramy ten do którego dotychczasowa droga byłą najkrótsza. Z listy sąsiedztwa tego wierzchołka analizujemy drogi do wszystkich nie czarnuch wierzchołków 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 P brak 1 8 7 O 0 5 15 4 17 20 5 14 3 7 5 1 4 8 4 3 6 20 7 7 3 2 8 1 2 7 Węzeł 1 2 3 4 5 6 7 8 K 2 2 P brak 1 8 7 O 0 5 15 4 17 20 5 14 3 7 5 1 4 8 4 3 6 20