Sobes.tech
Junior

Ինչպես է աշխատում բինար ծառը?

sobes.tech AI

Պատասխան AI-ից

Երկկողմանի ծառը տվյալների կառուցվածք է, որը ձևավորված է ծառի տեսքով, որտեղ յուրաքանչյուր հանգույց ունի առավելագույնը երկու երեխաներ՝ ձախ և աջ:

Աշխատանքի սկզբունքներ:

  • արմատ: Ծառի վերին հանգույցը:
  • հանգույցներ: պարունակում են տվյալներ և հղումներ երեխաների հանգույցներին:
  • փայտեր: հանգույցներ առանց երեխաների:
  • կապեր: ուղղորդված են ծնողական հանգույցից դեպի երեխաներ:

Հիմնական գործողություններ:

  • Ավելացում: Նոր հանգույցներ ավելացվում են ծառի որոշակի տեղում, պահպանելով նրա կառուցվածքը և կանոնները (օրինակ՝ երկկողմանի որոնողական ծառի համար՝ փոքր արժեքները ձախ, մեծերը՝ աջ):
  • Որոնում: Հանգույցների անցում՝ հատուկ տարր գտնելու համար: Երկկողմանի որոնողական ծառում որոնումը արդյունավետ է տվյալների դասավորության շնորհիվ:
  • Ջնջում: Հանգույցի ջնջում՝ կառուցվածքի վերականգնումով:
  • Տեղեկատվության անցում: Բոլոր հանգույցների այցը որոշակի կարգով:
    • Նախորդում (Pre-order): Հանգույց, ձախ ենթաարև, աջ ենթաարև:
    • Պոստ-օրդեր (Post-order): Ձախ ենթաարև, աջ ենթաարև, հանգույց:
    • In-order: Ձախ ենթաարև, հանգույց, աջ ենթաարև (տալով դասավորված ցանկալի ցուցակ):

Առավելություններ:

  • Արդյունավետ որոնում, ավելացում և ջնջում (համաձայնեցված ծառերում):
  • Օգտագործվում է հիերարխիկ տվյալների ներկայացման համար:

PHP-ում հանգույցի կառուցվածքի օրինակ:

<?php

class Node {
    public $data; // Հանգույցի տվյալներ
    public $left; // Ձախ երեխան
    public $right; // Աջ երեխան

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