Težinski-balansirano stablo

Težinski-balansirano binarno stablo je binarno stablo koje je balansirano na osnovu informacija koje ukazuju na verovatnoću traženja određenog čvora. Unutar svakog podstabla, čvor sa najvećom težinom se prikazuje kao koren. Ovo može rezultirati efikasnijim primenjivanjem pretrage.

Osobine uredi

Lema uredi

U težinski-balansiranom stablu za svaki proizvoljan čvor P važi da je |Tlp|≤3|Tdp|+1, i |Tdp|≤3|Tlp|+1, gde je |Tdp| kardinalnost desnog podstabla čvora P, a |Tlp| kardinalnost levog podstabla čvora P.

Dokaz leme uredi

Vrši se indukcijom po broju čvorova u stablu.

Teorema uredi

Maksimalna visina težinski-balansiranog stabla je O(log n), gde je n broj čvorova u stablu.

Dokaz teoreme uredi

Izvodi se iz leme.

 
Dijagram 1, Primer težinski-balansiranog stabla

Dijagram uredi

Na dijagramu 1 koji prikazuje težinski-balansirano stablo, slova predstavljaju vrednosti čvorova, a brojevi težine čvorova. Vrednosti se koriste kako bi se uredilo stablo, po istom principu kao i binarno stablo pretrage. Na težinu se može gledati kao na verovatnoću ili broj aktivnosti vezanih za određeni čvor. Na dijagramu, koren je G zato što je njegova težina najveća od svih čvorova u stablu. Levo podstablo čvora G počinje sa A zato što A ima najveću težinu od čvorova u tom podstablu. Isto važi i za desno podstablo čvora G, N je čvor sa najvećom težinom od svih čvorova koji dolaze posle G.

Složenost uredi

 
Dijagram 2, Poredjenje efikasnosti

Prosečno vreme pretrage uredi

Kao i za sve algoritme zasnovane na binarnom stablu pretrage, tako i težinski-balansirano stablo ima prosečno vreme pretrage O(log n). Na dijagramu 2 se može videti poređenje efikasnosti pretrage nad različitim strukturama podataka.

Prostorna složenost uredi

Količina prostora koja je neophodna je ekvivalentna kao i kod AVL stabla i većine stabala binarne pretrage odnosno O(n).

Vidi još uredi

Reference uredi