Sobes.tech
Junior — Middle

Ma'lumotlar tuzilmasi kontekstida ikkilik daraxt va muvozanatli daraxt o'rtasidagi asosiy farqlar nimalarda?

sobes.tech AI

AIdan javob

Asosiy farqlar ikkilamchi daraxt va muvozanatli daraxt o'rtasida:

  • Ikki tomonlama daraxt: har tugun eng ko‘pi bilan ikki vorisga ega bo‘lgan ma’lumotlar tuzilmasi (chap va o‘ng).
  • Muvozanatli daraxt: maxsus turdagi ikki tomonlama daraxt bo‘lib, u balandliklarni taxminan teng tutish uchun muvozanatni saqlaydi. Bu qidirish, qo‘shish va o‘chirish operatsiyalarining samaradorligini ta’minlaydi.

Muvozanatni saqlash, daraxt ro‘yxatga o‘xshab ketganda va operatsiyalar sekinlashganda (O(n)) oldini olish uchun zarur.

Muvozanatli daraxtlar misollari:

  • AVL daraxti
  • Qizil-oq daraxt

Go tilida soddalashtirilgan misol:

// Ikki tomonlama daraxt tuguni
type Node struct {
    Value int
    Left  *Node
    Right *Node
}

// Muvozanatli daraxtda, qo‘shishdan so‘ng rotatsiyalar amalga oshiriladi,
// muvozanatni saqlash uchun (bu yerda ko‘rsatilmagan).

Shunday qilib, muvozanatli daraxt — bu qo‘shimcha xususiyatlarga ega ikki tomonlama daraxt bo‘lib, samaradorlikni saqlash uchun mo‘ljallangan.