Sunteți pe pagina 1din 2

Modulul II.

Structuri de date neliniare

Capitolul 7. Arbori
7.1 Notiuni generale

Definitie: Un graf neorientat conex fara cicluri se numeste arbore.


Exemple: Urmatoarele grafuri sunt arbori:

Arbore 1 Arbore 2

Prezentam in continuare teorema de caracterizare a arborilor:


Teorema: Daca G este un graf neorientat cu n = numar de varfuri, n  3
atunci urmatoarele conditii sunt echivalente:
i. G este arbore;
ii. G este minimal conex (G este conex dar daca este eliminata orice muchie
a grafului graful obtinut nu mai este conex);
iii. G este fara cicluri maximal (Intre orice doua varfuri distincte exista exact
un singur drum elementar);
iv. G nu are cicluri si are n - 1 muchii;
v. G este conex si are n - 1 muchii.
Pentru demostratia acestei teoreme puteti consulta Ioan Tomescu, Data
Structures, Editura Universitatii din Bucuresti, 1997.
Corolar: Un arbore cu n varfuri are n - 1 muchii.

Definitia de mai sus a notiunii de arbore este cea folosita, in literatura de


specialitate, in teoria grafurilor. Un tip special de arbore il constituie un arbore, o
structura arborescenta, similara cu un arbore din natura sau cu un arbore genealogic,
in care se pune in evidenta un nod, numit radacina. Acesta este tipul de arbore folosit
in algoritmii computationali si in continuare vom folosi aceasta definitie a notiunii de
arbore. (In teoria grafurilor acest tip de arbore se numeste arbore cu radacina).
Deci putem spune ca un arbore este o multime de noduri legate intre ele prin
muchii ce indica relatiile dintre noduri, relatii de tip tata-fiu, similare arborilor
genealogici. In informatica arborii sunt vizualizati cu radacina in sus si frunzele in jos.
Nodurile sunt arajate pe nivele. Pe nivelul 0 se afla un singur nod, radacina. Nodurile
fiecarui nivel al aborelui sunt fii nodurilor nivelului precedent. Un nod care are fii se

1
numeste tata. Fii cu acelasi tata se numesc frati. De exemplu, in figura de mai sus, in
cazul aborelui 1, daca alegem 2 ca fiind radacina, reprezentarea arborelui pe nivele
este:

iar nodul 2 este tatal nodurilor 6, 1, 3, si 7; 5 este fiul lui 6; 4 este fiul lui 3; iar 8 este
fiul lui 7. Nodurile 5, 4, 8, si 1 nu au nici un fiu. Nodurile care nu au fii se mai
numesc frunze sau noduri terminale, iar muchiile dintre noduri, ramuri. Nodurile 6, 1 ,
3 si 7 sunt frati. Nodurile 6, 1 , 3 si 7 sunt urmasii lui 2. De asemenea, nodurile 5, 4 si
8 sunt urmasii lui 2, iar nodul 2 este stramosul tuturor nodurilor (mai putin el insusi),
2 fiind radacina raborelui. 2 adica radacina este singurul nod care nu are tata.
In general, un nod al unui arbore poate avea un numar arbitrar de fii. Daca
orice nod al unui arbore nu are mai mult de n fii atunci arborele se numeste arbore n-
ar. Un arbore in care orice nod nu are mai mult de 2 fii se numeste arbore binar.
Despre acest tip de arbori vom vorbi in capitolul urmator.
Se numeste inaltime a unui arbore lungimea celui mai lung drum de la
radacina la un nod terminal din arbore. Pentru arborele de mai sus inaltimea este 2.
Observati ca intre orice nod si radacina exista exact un singur drum.

Scrieti un program care gaseste drumul de la radacina la


Lab 8
un nod dat intr-un arbore dat.
1