132
Daraxtlar - bu dinamik to'plam amallarni bajaradigan ma'lumotlar
tuzilmalari. Bunday amallar sifatida elementni qidirish, minimal
(maksimal) elementni qidirish, kiritish, o'chirish, avlod-ajdodga o'tish,
avlodga o'tish kabilarni keltirish mumkin. Shunday qilib, daraxt oddiy
lugʻat sifatida ham, ustivor navbat sifatida ham ishlatilishi mumkin.
Daraxtlardagi asosiy amallar uning balandligiga mutanosib vaqtda
bajariladi.
Muvozanatlashgan
daraxtlar
ularning
balandligini
kamaytiradi (masalan, tugunlari bo'lgan ikkilik muvozanatli daraxtning
balandligi
logn
).
Bu standart qidiruv daraxtlarida qanday muammo bor? Oldingi
mavzularda aytib o'tilgan daraxtlardan biri tasvirlangan ulkan
ma'lumotlar bazasini ko'rib chiqaylik. Shubhasiz, bu daraxtlarning
barchasini tezkor xotirada saqlay olmaymiz – ma'lumotlarning faqat bir
qismini saqlaymiz, qolganlari uchinchi tomon vositasida saqlanadi
(masalan, kirish tezligi ancha past bo'lgan qattiq diskda). Qizil-qora yoki
Dekart kabi daraxtlar uchinchi tomon vositalariga kirishni talab qiladi.
Katta
n
lar uchun bu juda ko'p. Aynan mana shu muammo B daraxtlar
hal qilish imkonini beradi.
B daraxtlari ham muvozanatlashgan daraxtlardir, shuning uchun
standart amallarni bajarish uchun vaqt balandlikka mutanosib. Ammo,
boshqa daraxtlardan farqli o'laroq, ular maxsus disk xotirasi bilan ishlash
uchun yaratilgan (oldingi misolda - uchinchi tomon tarqatuvchi),
aniqrogʻi ular kirish -chiqish turidagi murojaatlarni kamaytiradi.