Sobes.tech
Junior

Jak funguje binární strom?

sobes.tech AI

Odpověď od AI

Binární strom je datová struktura ve tvaru stromu, kde každý uzel má nejvýše dva potomky: levého a pravého.

Principy fungování:

  • Kořen: Horní uzel stromu.
  • Uzel: Obsahuje data a odkazy na potomky.
  • Listy: Uzel bez potomků.
  • Vazby: Směřují od rodičovského uzlu k potomkům.

Hlavní operace:

  • Vložení: Nové uzly jsou přidávány na určité místo ve stromu, zachovávají jeho strukturu a pravidla (například, pro binární vyhledávací strom: menší hodnoty vlevo, větší vpravo).
  • Hledání: Procházení uzlů za účelem nalezení konkrétního prvku. V binárním vyhledávacím stromu je hledání efektivní díky řazení dat.
  • Odstranění: Odstranění uzlu s přestavbou struktury stromu.
  • Procházení: Návštěva všech uzlů stromu v určitém pořadí:
    • Pre-order: Kořen, levý podstrom, pravý podstrom.
    • Post-order: Levý podstrom, pravý podstrom, kořen.
    • In-order: Levý podstrom, kořen, pravý podstrom (dává seřazený seznam prvků).

Výhody:

  • Efektivní hledání, vkládání a odstraňování (v vyvážených stromech).
  • Používá se k reprezentaci hierarchických dat.

Příklad struktury uzlu v PHP:

<?php

class Node {
    public $data; // Data uzlu
    public $left; // Levý potomek
    public $right; // Pravý potomek

    public function __construct($data) {
        $this->data = $data;
        $this->left = null;
        $this->right = null;
    }
}