Modalitati de Parcurgere a Grafurilor (Parcurgerea in Latime Si Adancime)

download Modalitati de Parcurgere a Grafurilor (Parcurgerea in Latime Si Adancime)

of 2

description

Modalitati de Parcurgere a Grafurilor (Parcurgerea in Latime Si Adancime)

Transcript of Modalitati de Parcurgere a Grafurilor (Parcurgerea in Latime Si Adancime)

Parcurgere (traversare) -Vizitarea varfurilor, o singura data, pornind de la un varf dat 0; -Se pot vizitat varfurile conectate cu 0 (exista drum de la la 0)

Ordinea de vizitare NU constitue un drum!

Parcurgerea in latime(Breadth First)

Fie G=(V,E) un graf.A-matricea de adiacen a grafului;C-o structur de tip coad,n care snt introduse vrfurile ce urmeaz a fi vizitate i procesatem-un vector cu n componente(iniializate cu 0),unde mi=1 sau mi=0

Algoritm:

se adaug 0 n coad i marcheaz 0=1 ct timp coada nu e vid :-se extrage un vrf din coad-se viziteaz (proceseaz) -pentru fiecare vecin nevizitat al lui :+se adaug k n coad i se marcheaz ([]=1) +opional, se proceseaz muchia i -

Parcurgerea in adancime

Parcurgeri n adncime sunt parcurgerile n preordine, inordine i postordine. n toate cele trei tipuri de parcurgere n adncime se viziteaz prima dat subarborele stng i apoi subarborele drept, iar diferena const n momentul n care se viziteaz rdcina. Funciile de parcurgere pot fi scrise recursiv sau iterativ, folosind o stiv.

Parcurgerea n preordine RSD se viziteaz mai nti rdcina , apoi se parcurge n preordine subarborele stng i subarborele drept.Parcurgerea n inordine SRD se parcurge mai nti n inordine suarborele stng , apoi rdcina , apoi se parcurge n inordine subarborele drept.Parcurgerea n postordine SDR se parcurg n postordine subarborele stng i subarborele drept , iar apoi se viziteaz rdcina .

Fie G=(V,E) un graf.A-matricea de adiacen a grafului;S- o structurde tip stiv,ncare snt introduse vrfurile ce urmeaz a fi vizitate i procesatem-un vector cu n componente(iniializate cu 0),unde mi=1 sau mi=0

Algoritm:

-stiva S este iniializat cu vrful v0; - ct timp S , +Se extrage i viziteaz un vrf idin stiv,+Se introduc n stiv vecinii lui i care nu au fost deja introdui (acele vrfuri k cu proprietatea c m[k]=0 i a[i][k]=1). Vrfurile i ce au fost introduse n stiv snt marcate prin m[i]=1.