Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateC
C sharpCalculatoareCorel drawDot netExcelFox pro
FrontpageHardwareHtmlInternetJavaLinux
MatlabMs dosPascalPhpPower pointRetele calculatoare
SqlTutorialsWebdesignWindowsWordXml

PARCURGEREA ARBORILOR BINARI

calculatoare



+ Font mai mare | - Font mai mic



PARCURGEREA ARBORILOR BINARI

Prin parcurgerea arborilor binari se intelege examinarea in mod sistematic a nodurilor sale astfel incat fiecare nod sa fie atins o singura data. Exista trei modalitati, specifice arborilor binari, de parcurgere:



parcurgerea in preordine (RSD : radacina-stanga-dreapta)

parcurgerea in inordine (SRD : stanga-radacina-dreapta)

parcurgerea in postordine(SDR : stanga-dreapta-radacina)

Parcurgerea in preordine a arborelui cu radacina I, presupune parcurgerea etapelor:

>       se viziteaza radacina (nodul i);

>        daca exista, se parcurge in preordine subarborele stang (are radacina st[I];

>        daca exista, se parcurge in preordine subarborele drept (are radacina dr[I];

procedure preordine(I:integer); begin

write(info[I]:4);

if (st[I]<>0) then preordine(st[I]);

if (dr[I]<>0) then preordine(dr[I]); end;

Parcurgerea in inordine, a arborelui cu radacina I, presupune parcurgerea etapelor:

>       daca exista, se parcurge in inordine subarborele stang (are radacina st[I]);

>       se viziteaza radacina (nodul i);

>       daca exista, se parcurge in inordine subarborele drept (are radacina dr[I]);

procedure inordine(I:integer); begin

if (st[I]<>0) then inordine(st[I]);

write(info[I]:4);

if (dr[I]<>0) then inordine(dr[I]); end;

Parcurgerea in postordine, a arborelui cu radacina I, presupune parcurgerea etapelor:

Ø    daca exista, se parcurge in postordine subarborele stang (are radacina

st[I];

Ø    daca exista, se parcurge in postordine subarborele drept (are radacina
dr[I]);

Ø    se viziteaza radacina (nodul i);

procedure postordine(I:integer); begin

if (st[I]<>0) then postordine(st[I]);

if (dr[I]<>0) then postordine(dr[I]);

write(info[I]:4); end;

Lista nodurilor in urma parcurgerii: in preordine este: 1, 2, 4, 5, 7, 3, 6, 8, 9 in inordine este: 4, 2, 7, 5, 1, 3, 8, 6, 9 in postordine este: 4, 7, 5, 2, 8, 9, 6, 3, 1


Exemplu. Fie arborele binar:



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 2179
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved