You are on page 1of 8

Arbori binari

strict i s i echilibrat i AVL

Reamintim urmatoarele proprietat i pentru un arbore binar strict T : NE (T ) (sau NE ) = numarul de frunze ale lui T ; NI (T ) (sau NI ) = numarul de noduri interne ale lui T ; a lui T ; LE (T ) (sau LE ) = lungimea externa a lui T ; LI (T ) (sau LI ) = lungimea interna Propozit ie 1: In oricare a.b.s.

avem relat ia:

NE = NI + 1.
Propozit ie 2: In oricare a.b.s.

avem relat ia:

LE = LI + 2NI .
Propozit ie 3: In oricare a.b.s.

ime h(T ) de nalt

= d avem relat ia:

NE 2d .
Corolar 1: In oricare a.b.s.

ime h(T ) de nalt

= d avem relat ia:

d log2 NE .
de frunze xat, NE , lungimea externa minima se atinge pentru Propozit ie 4: In familia a.b. strict i cu numar niveluri adiacente. aceia care au frunzele repartizate pe cel mult doua

minima a unui a.b.s. cu NE frunze este: Propozit ie 5: Lungimea externa

Lmin = NE log2 NE + 2(NE 2 E

log2 NE

).

d = h(T )= imea unui a.b.s. T pe care se atinge lungimea externa minima, Din Demonstrat ie: daca nalt avem 2 cazuri (cf. Prop. 4): Cazul (a): Toate frunzele sunt la acelas i nivel, d = h(T ), daca NE = 2d . Cazul (b): Frunzele nu sunt toate la acelas i nivel. Dar atunci ele sunt repartizate doar pe nivelurile d 1 (e y nr. de frunze de la acest nivel), s i d (e 2x nr. de frunze de la acest nivel, x= nr. de noduri interne de la nivelul sistemul: d 1). Se rezolva

x + y = 2d1 (1) x + y = NE (2)


Avem: nr. de frunze la nivelul d 1 = y = 2d NE , nr. de frunze la nivelul d = 2x = 2NE 2d .

medie Lmedie Propozit ie 6: Intr-un a.b.s. lungimea externa E

LE NE

are marginea inferioara

Lmedie log2 NE . E

Teorema AVL
s pentru imea unui arbore binar echilibrat AVL Margine superioara i margine inferioara nalt Teorema 1 Teorema AVL: Fie imea lui. Avem: nalt

un arbore binar strict s i echilibrat AVL, cu

noduri interne. Fie

h(T )

log2 (n + 1) h(T ) 1.4404 log2 (n + 2) 0.328.


i: Echivalent. Sunt satisfacute urmatoarele inegalitat (1) (2)

h(T ) log2 (n + 1). h(T ) (1/log2 )log2 (n + 2) + (log2 5/2log2 2), unde = (1 + 5)/2.

pentru a.b.s. din Corolarul la Prop. 3). Demonstrat ie: Inegalitatea (1) este adevarata n general (rezulta particulara de a.b.s. s Pentru a dem. ineg. (2) construim o clasa i echil. AVL, arborii Fibonacci. Numerele Fibonacci (de ordinul 1): Fn+2 = Fn+1 + Fn , pentru n 1. F 1 = F2 = 1 s i relat ia de recurent a

Formula Binet pentru numere Fibonacci:

n ), unde = (1 + 5)/2. Fn = (1/ 5)(n

familia de arbori binari (F Tk )k0 , F Tk = Arbore Fibonacci (Fib Tree) de ordin k . Construim prin recurent a

F T0 F T1 F T2

F T3

F T4

...

F Tk

F Tk2 F Tk1

F1 1

F2 1

F3 2

F4 3

F5 5

...

Fk+1

Lema 1: Pentru orice k Lema 2: Pentru orice k (a) (b) (c)

0 arborele F Tk este a.b.s. 1 arborele F Tk are caracteristicile:

h(F Tk ) = k 1. NE (F Tk ) = Fk+1 . NI (F Tk ) = Fk+1 1.

demonstram (a) s a lui (b) prin Prop 1. Demonstrat ie: Este sucient sa i (b), (c) este consecint a k, k Induct ie dupa

1.

k = 1: F T1 este ... cu h(F T1 ) = 0 s i NE (F T1 ) = 1 = F2 .


Pp. (a) s i (b) adev. pentru F Tm , orice m Fie k oarecare, xat, k (a) (b)

< k.

3. Avem:

h(F Tk ) = h(F Tk1 ) + 1 = (k 2) + 1 = k 1. NE (F Tk ) = NE (F Tk1 ) + NE (F Tk2 ) = Fk + Fk1 = Fk+1 . 0 arborele F Tk este echilibrat AVL.

Lema 3: Pentru orice k Demonstrat ie: Pt.

k = 0, 1, 2 direct. Pt. k 3, (inductie), de dem. in nodul radacina se fol. (a) din Lema 2.

ime data, Lema 4: In familia arborilor binari strict i s i echilibrat i AVL de nalt minim de noduri interne. h. Demonstrat ie: Induct ie dupa

h,

arborii Fibonacci au numar

h = 0. Singurii a.b.Fib. ... au NI = 0. h = 1. T1 = a.b.s. T1 = F T2 .


ime 1 s acina) de nalt i nr minim de noduri interne, are 1 nod intern (rad s i 2 frunze, i.e.

cu Th un a.b.s. s ime h care are nr. minim de noduri interne. Notam i echil. AVL de nalt Ipot. induct ie: pentru orice k , k

< h avem Tk = F Tk+1 .


Are nod rad. cu i

h oarecare, h 2: e Th ca mai sus. h(lef t(Th )) > h(right(Th )). Avem:


(i) (ii)

lef t(Th )

s i

right(Th ).

Putem pp. ca

h(lef t(Th )) = h 1 s i NI (lef t(Th )) minim, deci lef t(Th ) = Th1 . h(right(Th )) = h 2 s i NI (right(Th )) minim, deci right(Th ) = Th2 . F Th1 , deci, din (i) lef t(Th ) = F Th si din (ii) right(Th ) = = Fh+2 1.

Dar, cf. ipot. ind., Th1 = F Th s i Th2 = F Th1 , din care rezulta ca Th = F Th+1 .

ime h data va NI (F Th+1 ) Observatie: Cf. Lemei 1 nr. minim de noduri interne pentru nalt

Revenim la dem. Th. ineg. (2).

Fie T un a.b.s. s i echil AVL, cu n avem

ime h = h(T ). = NI (T ) noduri interne s i nalt

lema 4, Cf. Obs. de dupa

n Fh+2 1. 1 1 h+2 h+2 1 n, 5 5 1+ 5 0 rezulta unde = 2 , = 12 5 . Din 1 1 n h+2 2, 5 1 n + 2 h+2 , 5 1 log2 (n + 2) (h + 2)log2 log2 5. 2
Desfac, n fct . de h ... rezulta

h
si a < q.e.d.

1 log2 5 log2 (n + 2) + 2 = a log2 (n + 2) + b, log2 2log2

1.4404, b < 0.328.