Junior
Шта је бинарно дрво?
sobes.tech АИ
Одговор од АИ
Binarno drvo je struktura podataka u obliku stabla u kojoj svaki čvor ima najviše dva potomka: levog i desnog.
Ključne karakteristike:
- Svaki čvor ima pokazivač na svoju vrednost (podatke) i pokazivače na levog i desnog potomka (mogu biti prazni).
- Postoji korenski čvor — gornji čvor stabla, bez pretka.
- Listovi su čvorovi bez potomaka.
- Podstabla su svaki od binarnih stabala koja čine podstablo korena.
Glavne vrste binarnih stabala:
- Puno binarno stablo: na svakom nivou, osim možda poslednjeg, svi čvorovi imaju dva potomka, a na poslednjem nivou svi čvorovi su pomereni ulevo.
- Savršeno binarno stablo: svi nivoi su potpuno popunjeni, i svaki čvor (osim listova) ima dva potomka.
- Uravnoteženo binarno stablo: visine levog i desnog podstabla svakog čvora razlikuju se najviše za 1.
Primene u QA:
- Hijerarhija testova: organizacija testnih scenarija ili skupova testova u stablastu strukturu radi bolje čitljivosti i navigacije.
- Pretraživanje i sortiranje podataka: binarna stabla pretraživanja koriste se za brzo pretraživanje, umetanje i brisanje elemenata (npr. pri testiranju performansi operacija nad podacima).
- Struktuiranje podataka: predstavljanje i organizacija test podataka ili rezultata izvršenja.
Primer prikaza čvora u Pythonu:
class Node:
def __init__(self, value):
self.value = value # Vrednost čvora
self.left = None # Levi potomak
self.right = None # Desni potomak