ARBORI BINARI

 

Un arbore binar este un caz special de arbore, în care fiecare nod poate avea maxim doi descendenţi:

Exemplu de arbore binar:

 

strabatAdancClasic

Fig.

 

În funcţie de elementele ce pot fi reprezentate în noduri şi de restricţiile aplicate arborelui, se pot crea structuri de date cu proprietăţi deosebite: heap-uri, arbori AVL, arbori roşu-negru, arbori Splay şi multe altele.

 

Up Home Structura Site

 

REPREZENTAREA ARBORILOR BINARI


Arborii binari pot fi reprezentați în mai multe moduri. Structura din spatele acestora poate fi un simplu vector, alocat dinamic sau nu, sau o structură ce folosește pointeri

Up Home Structura Site


PARCURGEREA ARBORILOR BINARI

 

A. Parcurgerea ca un graf clasic

 

B. Parcurgri specifive arborilor binari

Fie arborele din figura

arboreVideo1

Fig.

 

prezentare video video1

 


arboreVideo

Fig.

 

video2 Strabaterea in Preordine

video3 Strabaterea in Inordine

video4 Strabaterea in Postordine

 

Se implementeaza foarte usor recursiv:

Se folosește o coadă, iar la fiecare pas se extrage din această coadă câte un nod și se adăugă înapoi în coadă nodul stâng, respectiv drept al nodului scos. Acest algoritm continuă până când coada devine goală.
Nodurile frunză nu au descendenţi → nodul stâng şi nodul drept pointează la NULL şi nu trebuie adăugate în coadă.

 

Up Home Structura Site

 

 

EXEMPLE DE APLICAŢII PENTRU EXPLOATAREA ARBORILOR BINARI

 

A. Crearea unui arbore binar

arboriBinariCreare1a

arboriBinariCreare1b

15 3

0 5 4 15 0 1 6 11 0 0 0 0 8 13 0

0 0 14 7 0 0 0 0 0 12 0 0 10 2 9

rezArboriBinariCreare1

 

B. Strabaterea unui arbore binar

strabateriArboriBinari1

strabateriArboriBinari2

strabateriArboriBinari3

strabateriArboriBinari4

arboreVideo

Fig.

 

rezStrabateriArboriBinari

Up Home Structura Site