Balanslangan qidiruv daraxtlari
Balanslangan qidiruv daraxtlari MUNDARIJA KIRISH ............................................................................................................ 2 Haqiqiy ikkilik qidiruv .................................................................................. 12 ADABIYOTLAR RO’YXATI ...................................................................... 29
KIRISH Fanda daraxtlar haqida ma’lumot Daraxt - bu bog langan asiklik graf, ya‘ni sikllar yo q va uchlar juftligi orasidaʻ ʻ bitta yo l bor . Kirishning nol darajasiga ega bo lgan uch daraxtning ildizi, chiqish ʻ ʻ nol darajaga ega tugunlar esa barglar deb nomlanadi. Ulanish har qanday uchlar juftligi o rtasida marshrut mavjudligini anglatadi, aylanuvchanlik sikllar yo qligini ʻ ʻ anglatadi. Demak, xususan, shundan kelib chiqadiki, daraxtdagi qirralarning soni uchlar sonidan bitta kamroq va har qanday uchlar juftlari orasida bitta va faqat bitta yo l bor. O rmon – juda ko p daraxtlardir. Yo naltirilgan (oriyentirlangan) daraxt - ʻ ʻ ʻ ʻ bu faqat bitta vertikal kirish nol darajasiga ega bo lgan (boshqa yoylar unga olib ʻ kelmaydigan), boshqa uchlarning kirish darajasi 1 bo lgan siklik orgraf (sikllarni ʻ o z ichiga olmaydigan yo naltirilgan graf). ʻ ʻ Daraxtning asosiy tushunchalari Ildiz tuguni - daraxtning eng yuqori tuguni . Ildiz – ixtiyoriy tanlab olingan uchlardan biri. Barg yoki terminal tuguni – avlodi mavjud bo lmagan tugun. ʻ Ichki tugun - bu daraxtga avlodi mavjud bo lgan har qanday tugun va shuning ʻ uchun barg tuguni emas . Uchning darajasi - unga tushgan qirralarning soni. Daraxt osti - bu alohida daraxt sifatida namoyish etilishi mumkin bo lgan daraxtga ʻ o xshash ma‘lumotlar strukturasining bir qismidir. T daraxtining har qanday tuguni ʻ va uning barcha nasl tugunlari bilan birga T daraxtining pastki daraxti hisoblanadi. Daraxt osti har qanday tuguni uchun, yo ushbu kichik daraxtning ildiz tuguniga yo l bo lishi kerak, yo tugunning o zi ildiz bo lishi kerak. Ya‘ni, kichik daraxt ildiz ʻ ʻ ʻ ʻ tuguniga butun daraxt bilan bog lanadi va boshqa barcha tugunlar bilan daraxt ʻ osti aloqasi tegishli daraxt osti tushunchasi orqali aniqlanadi (―to plam osti" ʻ atamasi bilan o xshashlik bo yicha). ʻ ʻ Daraxt strukturasi orasida tartiblangan daraxtlar eng keng tarqalgan.
Binar (Ikkilik) qidiruv daraxti - tartiblangan daraxt turidir. Daraxtlar ustida bajariladigan umumiy amallar: 1) yangi elementni ma‘lum bir joyga kiritish; 2) daraxt osti kiritish; 3) daraxt shoxini qo shish (payvandlash deb ataladi);ʻ 4) har qanday tugun uchun ildiz elementini topish; 5) ikkita uchning eng kichik umumiy ajdodini topish; 6) daraxtning barcha elementlarini sanab chiqish; 7) daraxt novdasi elementlarini sanab chiqish; 8) izomorfik daraxt osti qidirish; 9) elementni qidirish; 10) daraxt shoxini olib tashlash; 11) daraxt ostini olib tashlash; 12) elementni o chirish. ʻ Daraxtlarning qo llanish sohalari: ʻ 1) ma‘lumotlar iyerarxiyasini boshqarish; 2) axborot olishni soddalashtirish 3) ma‘lumotlarning saralangan ro yxatlarini boshqarish; ʻ 4) arifmetik ifodalarni tahlil qilish (inglizcha parsing), dasturni optimallashtirish; 5) turli xil vizual effektlarni olish uchun raqamli rasmlarni yaratish texnologiyasi sifatida; 6) ko p bosqichli qaror qabul qilish shakllarida (shaxmat). ʻ
Daraxtlarda qo shnilik (A) va insidentlik (B) matritsalari.ʻ Daraxtlar uchun bunday matritsalarning o ziga xos xususiyatlarini ta‘kidlaylik. N ʻ ga teng bo lgan daraxtning qirralari sonining nisbati bog langan graf uchun ʻ ʻ minimal, shuning uchun daraxtning qo shnilik matritsasi juda kam (ularning ʻ nisbati va undagi nollar yo naltirilgan daraxt uchun va yo naltirilmagan uchun). ʻ ʻ Daraxtning insidentlik matritsasi o lchamiga ega, ya‘ni kvadratga yaqin, va aslida, ʻ agar biz uning ortiqcha ekanligini hisobga olsak. Darhaqiqat, har qanday qatorni olib tashlab, biz avvalgidek grafni to liq tavsiflaydigan kvadrat matritsani olamiz. ʻ Quyida keltirilgan insident matritsasining yana bir xususiyati quyidagicha. Satr va ustunlarni qayta tartiblash orqali har qanday daraxtning insidentlik matritsasi ustun
birliklaridan biri qatorda, ikkinchisi pastki qatorlardan birida bo lganda pastkiʻ trapetsiya matritsaga tushirilishi mumkin. Daraxt ketma-ket qirralarni qo shib quriladi. Keyingi qo shilgan chekka, ʻ ʻ birinchisidan boshlab, vertikal juftlik bilan hosil bo ladi, ularning raqamlari kod ʻ satrida va antikod satrida birinchi bo ladi. Shundan so ng, ishlatilgan satr ʻ ʻ elementlari chiziladi. Agar kod satridan chiqib ketgan raqam undagi qolgan elementlar qatoriga kiritilmagan bo lsa, uning tartibini buzmasdan antikod qatoriga ʻ qo shilishi kerak. Ta‘riflangan harakatlar kod va antikod satrlarining "qoldiqlari" ʻ bilan ularning birinchisining barcha elementlari o chirilguncha takrorlanadi. ʻ Bunday holda, antikod chizig ida hosil qilingan ro yxatga qo shiladigan so nggi ʻ ʻ ʻ ʻ chekkani belgilaydigan ikkita element bo ladi, natijada biz Pryufer kodi bilan ʻ belgilangan daraxtga mos keladigan n - 1 qirralarning ro yxatini olamiz. 3-misol. ʻ Masalan, 1-misolda berilgan 14166 kodi yordamida daraxtni tiklaylik. Yuqorida 1- misolda ko rsatilgandek mos keladigan antikod 2357 ni tashkil qiladi. Shuning ʻ uchun daraxtning birinchi qirrasi {1; 2}. 1 va 2-ni kesib o tib, biz kod satrida 4166 ʻ va antikod satrida 357 olamiz. Keyingi takrorlashda {4; 3} juftligini kesib tashlaymiz va qatorga antikod 4 ni kiritamiz va hokazo. Takrorlashlar ketma- ketligi 8- jadvalda keltirilgan.