Sunteți pe pagina 1din 5

Arbori binari

Un arbore binar este un arbore în care există un singur nod numit "rădăcină" aflat pe nivelul 0
(de regulă în reprezentare este desenat cel mai sus).
Fiecare nod POATE avea cel mult doi fii, a căror ordine este importantă: unul pe stânga și
altul pe dreapta.
Nodurile care NU mai au fii se numesc "frunze".
Exemplu:

Fiii unui nod aflat pe nivelul k se află pe nivelul k+1. Numărul de niveluri se numește
"înălțimea" sau "adâncimea arborelui". Pe exemplul luat adâncimea arborelui este 5, nivelurile
fiind numerotate de la 0 la 4.

Parcurgerile arborilor: există 3 parcurgeri standard, care se definesc toate în mod recursiv.
Acestea se fac în funcție de ordinea în care luăm Rădăcina (R), subarborele Stâng (S),
subarborele Drept (D).
1) PREORDINE: RSD

{{
NIMIC , dacă arborele curent este vid
prelucrăm ( afișăm ) Rădăcina arborelui
RSD(arbore)=
parcurgem recursiv RSD( subarbore stâng) încaz contrar
parcurgem recursiv RSD ( subarbore drept )
Exemplu:
1)

RSD( )= RSD( ) RSD( )=

RSD( )= RSD()RSD() =

RSD( )= RSD()RSD() =
2)

RSD( )= RSD( ) RSD() =

3)

RSD( )= RSD() RSD( )=

2) INORDINE: SRD

{{
NIMIC , dacă arborele curent este vid
¿ parcurgem recursiv S R D ( subarbore stâng )
SRD(arbore)=
prelucrăm ( afișăm ) Rădăcina arborelui încaz contrar
parcurgem recursiv S R D(subarbore drept )
Exemplu:
1)

SRD( )=SRD( ) SRD( )=

2)

SRD( ) = SRD( ) SRD() =

3)

SRD( ) =SRD() SRD( )=

3) POSTORDINE: SDR

{{
NIMIC , dacă arborele curent este vid
¿ parcurgem recursiv SD R ( subarbore stâng )
SDR (arbore)=
parcurgem recursiv SD R (subarbore drept ) în caz contrar
prelucrăm ( afișăm ) Rădăcina arborelui
Exemplu:
1)

SDR ( )=SDR ( )SDR ( ) =


2)

SDR ( ) = SDR( )SDR () =

3)

SDR( ) =SDR()SDR ( ) =

Să parcurgem arborele pe care l-am dat în exemplu:


Preordine:

RSD( )= RSD( )RSD( )=


=

RSD( )= RSD( )RSD() =

RSD( )= RSD()RSD( )=

RSD( )= RSD( )RSD( )=


RSD( )= RSD( )RSD( )=

INordine: SRD

SRD( ) = SRD( ) SRD( )=


=

SRD( ) = SRD( ) SRD() =

SRD( )=SRD() SRD( )=

SRD( ) = SRD( ) SRD( )=

SRD( )= SRD( ) SRD( )=


POSTordine: SDR

SDR ( ) = SDR ( )SDR ( ) =


=

SDR ( ) = SDR ( )SDR() =

SDR( )=SDR()SDR( ) =

SDR( ) = SDR( )SDR( ) =

SDR( )= SDR( )SDR( ) =

S-ar putea să vă placă și