Sobes.tech
Junior

Čo je binárne strom?

sobes.tech AI

Odpoveď od AI

Binárne strom je dátová štruktúra v tvare stromu, kde každý uzol má najviac dvoch potomkov: ľavého a pravého.

Kľúčové vlastnosti:

  • Každý uzol má ukazovateľ na svoju hodnotu (dáta) a ukazovatele na ľavého a pravého potomka (môžu byť prázdne).
  • Existuje koreňový uzol — horný uzol stromu, bez predka.
  • Listy sú uzly bez potomkov.
  • Podstromy sú každý z binárnych stromov, ktoré tvoria podstrom koreňa.

Hlavné typy binárnych stromov:

  • Kompletný binárny strom: na každej úrovni, okrem možno poslednej, majú všetky uzly dvoch potomkov a na poslednej úrovni sú všetky uzly posunuté doľava.
  • Dokonalý binárny strom: všetky úrovne sú úplne zaplnené a každý uzol (okrem listov) má dvoch potomkov.
  • Vyvážený binárny strom: výšky ľavého a pravého podstromu každého uzla sa líšia najviac o 1.

Použitie v QA:

  • Hierarchia testov: organizácia testovacích scenárov alebo súborov testov v stromovej štruktúre pre lepšiu čitateľnosť a navigáciu.
  • Vyhľadávanie a triedenie dát: binárne vyhľadávacie stromy sa používajú na rýchle vyhľadávanie, vkladanie a odstraňovanie prvkov (napríklad pri testovaní výkonu operácií nad dátami).
  • Štruktúrovanie dát: reprezentácia a organizácia testovacích dát alebo výsledkov vykonania.

Príklad reprezentácie uzla v Pythone:

class Node:
    def __init__(self, value):
        self.value = value  # Hodnota uzla
        self.left = None    # Ľavý potomok
        self.right = None   # Pravý potomok