ALG 6

ALG 6



256 Rozdział 10. Elementy algorytmiki grali!

Brak możliwości odtworzenia optymalnej drogi jest dość istotną wadą, ! gdyż o ile w przypadku małych grafów (takich jak ten z rysunku 10 - 9) możemy ją ewentualnie odczytać sami, to przy naprawdę dużych grafach jest to ] praktycznie niewykonalne.

Potrzebna nam jest zatem jakaś prosta modyfikacja algorytmu Floyda, która nie zmieniając jego zasadniczej idei, umożliwi zapamiętanie drogi.

Jak się okazuje, rozwiązanie nie jest trudne. Do oryginalnego algorytmu (patrz I listing wyżej) należy wprowadzić następującą poprawkę:

if( g[i][k)+g[k]tj]<g[i][j])

(

g[i] [j1=g t i] [k]+g[k] [j] ;

R [ i] (j]=k;

>

Optymalna droga będzie zapamiętywana w matrycy kierowania ruchem R. Czytelnikowi nie powinno sprawić zbytniego kłopotu napisanie procedury, która odtwarza znajdującą się w niej drogę. Załóżmy, że początkowo matryca jest wyzerowana. Aby odtworzyć optymalną drogę od wierzchołka i do wierzchołka /, patrzymy na wartość P[i][j]- Jeśli jest ona równa zero, to mamy do czynienia z przypadkiem elementarnym, tzn. z krawędzią, którą należy przejść. Jeśli nie, to droga wiedzie od / do P[i][j] i następnie od P[i][j] do /. Z uwagi na to. że powyższe dwie „pod-drogi” mogą nie być elementarne, łatwo zauważyć rekurcncyjny charakter procedury.

Liczę na to. że Czytelnik nie będzie miał kłopotów z jej stworzeniem... w ramach pożytecznego ćwiczenia!


Wyszukiwarka

Podobne podstrony:
ALG$6 246 Rozdział 10. Elementy algorytmiki gratów Ta historyczna anegdota stanowi jednocześnie dosk
ALG 8 258 Rozdział 10. Elementy algorytmiki grafa 1 Rys. 10- 10. Przeszukiwanie grafu „ w głąb Listu
ALG&0 260 Rozdział 10. Elementy algorytmiki grafów przebadane podczas przeszukiwania. Dopiero potem
ALG&4 264 Rozdział 10. Elementy algorytmiki gratów Używając danych z rysunku 10 - 14, algorytm mógłb
ALG3 Przedmowa 13Rozdział 10 Elementy algorytmiki grafów Opis jednej z najciekawszych struktur dany
ALG 2 252 warshall.cppRozdział 10, Elementy algorytmiki grafów Jest możliwe udowodnienie, że domknię
ALG3 Rozdział 3Analiza sprawności algorytmów Podstawowe kryteria pozwalające na wybór właściwego al
ALG!6 216 Rozdział 8. Przeszukiwanie tekslói8.2.2.Algorytm Boyera i Moore’a Kolejny algorytm, który
Przedmowa .13Rozdział 10 Elementy algorytmiki grafów Opis jednej z najciekawszych struktur danych
ALG6 66 Rozdział 3. Analiza sprawności algorytmów return pos; else    //element zost
ALG$8 248 RozdziałłO. Elementy algorytmiki gratów10.2.Sposoby reprezentacji grafów Poznane uprzednio
ALG 0 250 RozdziaMO. Elementy algorytmiki gratów ( z-O; while(l) // pętla nieskończona I if(z==n)
ALG 4 254 RozdziaMO. Elementy algorylmiki jiafa if<R[y][z)==0 &&
ALG&2 262 RozdziaMO, Elementy algorylmiki grafów Dlaczego jest on rozwiązywany przy pomocy grafów? C
ALG&6 266 RozdziaHO. Elementy algorytmiki grafów •    Promotor 4 porzuca swój aktualn
453 2 453 Rozdział 1 10. Wzór rekurencyjny: 4>(,+ l +>-.= !/(/»■+ 1). Algorytm y0 = łln 5, ,v«
ALG4 54 Rozdział 3. Analiza sprawności algorytmów Tematyką tego rozdziału jest tzw. złożoność oblic
ALG6 56 Rozdział 3. Analiza sprawności algorytmów jest intuicyjnie bardzo proste, dalej będziemy uż

więcej podobnych podstron