Sobes.tech
Middle

Ma'lumotlar tuzilmasi kontekstida toshlarning qanday tasniflari mavjud?

sobes.tech AI

AIdan javob

Ma'lumotlar tuzilmasi kontekstida, "xechir" (Heap) odatda ikkilamchi xechir (Binary Heap) tushuniladi, u quyidagi tasniflarga ega:

  1. Tartibga solish turiga ko'ra:

    • Minimal xechir (Min-Heap): Har bir tugunning qiymati uning bolalar tugunlarining qiymatidan kichik yoki teng. Asosiy tugun minimal element hisoblanadi.
    • Maksimal xechir (Max-Heap): Har bir tugunning qiymati uning bolalar tugunlarining qiymatidan katta yoki teng. Asosiy tugun maksimal element hisoblanadi.
  2. Daraxtning to'liqligiga ko'ra:

    • To'liq ikkilamchi xechir (Complete Binary Heap): Barcha darajalar, ehtimol, oxirgi daraja tashqari, to'liq to'ldirilgan va oxirgi darajadagi tugunlar imkon qadar chapga joylashtirilgan. Bu xususiyat xechirni samarali tarzda massivda saqlash imkonini beradi.
    // Konseptsiyani ko'rsatish uchun xechir tuguni uchun struktura misoli
    public class HeapNode<T>
    {
        public T Value { get; set; }
        // Bolalar tugunlariga havolalar har doim aniq bo'lmasligi mumkin massiv ko'rinishida
        public HeapNode<T> Left { get; set; }
        public HeapNode<T> Right { get; set; }
    }
    

Garchi Fibonacci xechiri (kengaytirilgan algoritmlar uchun) yoki binom xechiri kabi boshqa turdagi xechirlar mavjud bo'lsa-da, ko'p hollarda, "xechir" atamasi, asosan, keng qo'llanilishi va saralash algoritmlari (masalan, Heapsort) va prioritetli navbatlarda keng qo'llanilishi sababli, minimal yoki maksimal to'liq ikkilamchi xechirga ishora qiladi.