Crvena i crna stabla: opis, značajke

Rudolf Bayer razvio je sustav "crveno-crnih stabala" početkom 1970-ih. Ime je dano L. Gimpasu i R. Sedgwicku.

Što je s crvenim i crnim stablima

Važno je napomenuti da su oni jedan od tipova samo-balansirajućih binarnih stabala koji pružaju prebrojanu visinu broja čvorova i proizvode osnovne i osnovne procese stabla pretraživanja u kratkom vremenu. Te operacije uključuju pridruživanje, isključivanje i praćenje web-lokacije. Ravnoteža se osigurava na temelju dopune atributa primjene koda boje stranice. Ovo svojstvo poprima jedan od mogućih pojmova i označeno je jednom od navedenih boja.


Broj crnih jedinica na granama od početka (korijen) do finala (slovo) naziva se crna visina stabla.

Pojava izraza

Opisujući samo-balansirajuće stablo pretraživanja u njihovom djelu, autori članka vjerojatno nisu ni pretpostavili da će postati utemeljitelji novog termina. Međutim, sudbina je naručena tako da je tiskara bila u prisutnosti boje samo dviju boja. Također su označili svaki bit koji se pridružuje sljedećem čvoru.

Primjena

U informatici, crveno-crna stabla koriste se za stvaranje usporedivih podataka, koji mogu uključivati ​​različite izloženosti i dijelove natpisa ili brojeva. Možete stvoriti crveno-bijelo stablo na Actionscript, Python, C ++ i gotovo bilo koji drugi programski jezik. To je vrlo jednostavno. Crveno-crno Java stablo je također lijepoširoko rasprostranjena.

Značajke

Crno-crvena stabla su stabla pretraživanja u binarnom koordinatnom sustavu. U tim sustavima svaka web-lokacija ima određenu vrijednost boje. Može uzeti jedan od gore navedenih simbola. Osim svih uvjeta koji se primjenjuju na binarna veličanstvena stabla, na vrste koje razmatramo, primjenjuju se i sljedeća pravila:


  • Boja mjesta je isključivo jedna od gore navedene dvije. Nema drugih opcija, to se također odražava u nazivu termina.
  • Korijen stabla mora uvijek biti crn. Mogući su izuzeci, ali ovo odstupanje od pravila dodaje rizik da će se samo-balansiranje stabla srušiti.
  • Svi listovi imaju nultu vrijednost (NIL) i označeni su crnom bojom.
  • Potrebno je osigurati da su dva potomka svakog crvenog roditeljskog čvora crni.
  • Bilo koji tijek svjetlosti od određenog čvora do bilo kojeg pomoćnog čvora lista daje točno jednak broj crnih strukturnih jedinica. Ponekad se crvena i crna stabla tumače kao trivijalna binarna stabla pretraživanja. Njihove su razlike određene samo činjenicom da su za određene boje čvorovi gore navedene vrijednosti rebra od filca.

    Zašto odabrati crvenkasto crno drveće

    Crno-crvena stabla predstavljaju jednu od najčešće korištenih varijanti samo-balansirajućih binarnih stabala pretraživanja, koja se najčešće navode u praktičnom smislu. Što čini ovu popularnost jasnom? Praksa je lijen i vrijedna je priznanja. Sve je previše glomaznote teško koristiti, a istodobno daje usporedno slične rezultate u primjeni jednostavnijih metoda, umire ili odlazi na udaljeni plan. Ta prevalencija crveno-crnih stabala u ljudima posljedica je činjenice da oni najčešće pružaju optimalnu ravnotežu između kvalitete i razine ravnoteže i zakovristosti njegove potpore. Na primjer, ako ih usporedimo sa savršeno uravnoteženim stablima, onda može postojati situacija u kojoj se primjećuje da "idealni" predstavnici nameću previše nepomirljive zahtjeve. A u smislu provedbe akcije isključenja sa stabla ili okretanja previše vremena i truda troši se na stabiliziranje ravnoteže u danoj situaciji.

    Procesi

    Proces provjere crno-crvenih binarnih stabala gotovo je isti za sva ostala binarna pretraživanja grananja. Tako je, jer je svako crno-bijelo stablo jedna od privatnih opcija klasičnog binarnog stabla pretraživanja. Međutim, rad s njima trebao bi uzeti u obzir veću vjerojatnost da izravna proizvodnja uključivanja ili isključivanja podataka može oštetiti strukturu crnih i crvenih stabala. Ogromna prednost je što je potrebno relativno malo akcija za rekonstrukciju svojstava, kao što su mijenjanje boja i manje od tri okreta stabla. Zapravo, sve ove operacije ne oduzimaju mnogo vremena. Početak akcije umetanja ili umetanja stavke vrijedi dodati sljedećem čvoru. Ova funkcija je ista za sva binarna stabla pretraživanja.Sljedeći korak je obojiti čvor crvenom bojom. Jedina razlika je da ako umetanje binarnog stabla pretraživanja prvo doda slovo, onda u crnoj i crvenoj posljednjoj nema informacija. Prema tome, umjesto njih, dodaje se unutarnji čvor koji prima crvenu boju i dva njegova crna potomka. Naše daljnje akcije izravno su uvjetovane bojom susjednih čvorova. Za njih se koristi izraz "ujak". Izravna analogija s rodoslovnim stablom. Prema tome:
  • Karakteristika činjenice da su svi listovi crne boje, mora se uvijek provoditi.
  • Redoslijed činjenice da dva derivata svakog crvenog čvora ostaju crne boje može biti prekinut. No, to se događa samo pri dodavanju crvenog mjesta, kada mijenjate boju crne u crvenu ili kada se širi cijelo stablo.
  • Primijetimo također da slijed od čvora do slova, koji uključuje isti broj crnih čvorova, može biti pogođen. To se događa samo kada uključite crni čvor, mijenjajući crveni element u crni, kao iu suprotnoj situaciji, crno i crveno obojeno. Isto vrijedi i za okretanje drveća. Nakon proučavanja svega gore navedenog, lako je shvatiti kako pretraživati ​​crveno i crno stablo. Zanimljiva interpretacija tako jednostavnog pojma kao što je drvo, s opisom njegove boje - crveno-crno ili crno-smeđe. Sada ste svjesni toga.
  • Povezane publikacije