Structura de arbore - arbori generalizati

Trimis la data: 2010-09-11
Materia: Economie
Nivel: Facultate
Pagini: 138
Nota: 9.84 / 10
Downloads: 60
Autor: Catalin Stoicescu
Dimensiune: 180kb
Voturi: 3
Tipul fisierelor: doc
Acorda si tu o nota acestui laborator:
2. Aspecte teoretice.
2.1. Arbori si traversarea lor
Prin arbore se intelege o multime de n noduri de acelasi tip care, daca nu este vida, are un anumit nod numit radacina, iar restul nodurilor formeaza un numar finit de arbori, doi cate doi disjuncti.
Numarul fiilor unui nod formeaza gradul nodului. Gradul maxim al nodurilor unui arbore se numeste gradul arborelui. Adancimea unui nod este lungimea drumului unic de la radacina pana la acel nod.

Laboratoare similare:

Prin traversarea unui arbore se intelege executia unei anumite operatii asupra tuturor nodurilor arborelui. In timpul vizitarii nodurile sunt vizitate intr-o anumita ordine, astfel incat ele pot fi considerate ca si cum ar fi integrate intr-o lista liniara.Exista trei moduri de ordonare (traversare) a unei structuri de arbore, numite preordine, inordine si postordine.

Cele trei moduri de traversare se definesc recursiv in felul urmator:
- daca arborele A este nul, atunci traversarea lui A in preordine, inordine si postordine se reduce la lista vida.
- daca A se reduce la un singur nod, atunci nodul insusi reprezinta traversarea in oricare din cele trei moduri.
- pentru restul cazurilor, fie arborele A cu radacina R si subarborii acestuia A1, A2,...,Ak (figura 1.2). In acest caz:

1. Traversarea in preordine a arborelui A presupune traversarea radacinii R urmata de traversarea in preordine a lui A1, apoi de traversarea in preordine a lui A2, si asa mai departe pana la Ak inclusiv.
2. Traversarea in inordine presupune parcurgerea in inordine a subarborelui A1, urmata de nodul radacina R si, in continuare, parcurgerea in inordine ale subarborilor A2, A3,..., Ak.
3. Traversarea in postordine a arborelui A consta in traversarea in postordine a subarborilor A1, A2,..., Ak si, in final, traversarea nodului radacina R.

De exemplu, pentru arborele reprezentat in figura 1.1, traversarea acestuia in cele trei moduri are ca rezultat urmatoarele:
preordine: 1, 2, 5, 6, 10, 11, 12, 3, 4, 7, 8, 9, 13, 14
inordine: 5, 2, 10, 6, 11, 12, 1, 3, 7, 4, 8, 13, 9, 14
postordine: 5, 10, 11, 12, 6, 2, 3, 7, 8, 13, 14, 9, 4, 1

2.2. Implementarea arborilor generalizati prin indicator spre parinte
O maniera simpla de implementare o reprezinta utilizarea unui tablou (A), in care fiecare intrare A[I] contine un indice la parintele nodului I. Deci, daca A[I].indice = J, atunci nodul J este parintele nodului I, exceptie facand cazul in care nodul I este chiar radacina arborelui.

Aceasta modalitate de implementare face uz de proprietatea arborilor ca orice nod are un singur parinte. Reprezentarea prin indicator spre parinte are insa dezavantajul implementarii dificile a operatiilor legate de fii. Pentru a facilita acest lucru, se impune stabilirea unei ordini artificiale a nodurilor in tablou, respectand urmatoarele reguli:
- numerotarea fiilor unui nod se face numai dupa ce nodul a fost numerotat; in consecinta, fiii vor avea intotdeauna un numar de ordine mai mare decit nodul parinte;
Home | Termeni si conditii | Politica de confidentialitate | Cookies | Help (F.A.Q.) | Contact | Publicitate
Toate imaginile, textele sau alte materiale prezentate pe site sunt proprietatea referat.ro fiind interzisa reproducerea integrala sau partiala a continutului acestui site pe alte siteuri sau in orice alta forma fara acordul scris al referat.ro. Va rugam sa consultati Termenii si conditiile de utilizare a site-ului. Informati-va despre Politica de confidentialitate. Daca aveti intrebari sau sugestii care pot ajuta la dezvoltarea site-ului va rugam sa ne scrieti la adresa webmaster@referat.ro.