Brodala-Okasaki uyumi
Mavzu: “Brodala-Okasaki uyumi”. MUNDARIJA Kirish ......................................................................................................... 2 I Bob. Ustuvor mavbat va uyum haqida umumiy tushunchalar ............... 3 II Bob. Brodala-okasaki uyumi haqida boshlang'ich tushunchalar ........... 6 2.1. Asimptotik optimallik. ........................................................................ 9 2.2. Uyma tartiblash. ............................................................................... 10 2.3. Uyumni saralash algoritmi ............................................................... 14 Xulosa ...................................................................................................... 19 ADABIYOTLAR RO’YXATI ................................................................ 19 ILOVALAR ............................................................................................. 20 ILOVA 1. Modul N1 boshlang’ich kodi ................................................. 20
Kirish Ustivor navbatlar ko'pincha uyum (kucha) bilan amalga oshirilsa-da, ular konseptual jihatdan uyumlardan farq qiladi. Ustivor navbat - bu "ro'yxat" yoki "karta" ga o'xshash narsa; Ro'yxat bog langan ro'yxat yoki massiv yordamida ʻ amalga oshirilishi mumkin bo'lganidek, ustivor navbat uyum yoki tartiblanmagan massiv kabi boshqa usullar yordamida amalga oshirilishi mumkin. Ustivor navbat - bu yozuvlar bir-biri bilan chiziqli taqqoslanadigan kalitlarga (masalan, raqamlar) ega bo'lgan va ikkita amalni realizatsiya qiladigan axborot tizimidir. Bu ikki amal tizimga tasodifiy yozuvni kiritish va yozuv tizimidan eng kichigi bilan tanlov kalit. Dasturiy ta'minot tizimlarida ustivor navbatlar juda keng tarqalgan va dasturlarn
I Bob . Ustuvor mavbat va uyum haqida umumiy tushunchalar Ko'pgina ilovalar kalitlarga ega bo'lgan elementlarni qayta ishlashni talab qiladi, lekin ular to'liq tartibda va birdaniga hamasi emas. Ko'pincha, biz bir qator narsalarni to'playmiz, so'ngra eng katta kalit bilan ishlov beramiz, keyin ko'proq narsalarni to'playmiz, so'ngra hozirgi eng katta kalit bilan ishlov beramiz va hokazo. Bunday muhitda tegishli ma'lumotlar turi ikkita amalni qo'llab-quvvatlaydi: maksimal miqdorni o chirishʻ va joylashtirish. Bunday ma'lumotlar turi ustivor navbat deb nomlanadi. Ustivor navbatlar odatdagi navbat yoki stek ma'lumotlar tuzilmasiga o'xshash abstrakt ma'lumotlar turi bo'lib, unda har bir element qo'shimcha ravishda bog liq ʻ bo'lgan "ustivorlikka" ega. Ustivor navbatda yuqori ustivor element past ustivor elementdan oldin xizmat qiladi. 3 Ustivor navbatlar ko'pincha uyum (kucha) bilan amalga oshirilsa-da, ular konseptual jihatdan uyumlardan farq qiladi. Ustivor navbat - bu "ro'yxat" yoki "karta" ga o'xshash narsa; Ro'yxat bog langan ro'yxat yoki massiv yordamida ʻ amalga oshirilishi mumkin bo'lganidek, ustivor navbat uyum yoki tartiblanmagan massiv kabi boshqa usullar yordamida amalga oshirilishi mumkin. Ustivor navbat - bu yozuvlar bir-biri bilan chiziqli taqqoslanadigan kalitlarga (masalan, raqamlar) ega bo'lgan va ikkita amalni realizatsiya qiladigan axborot tizimidir. Bu ikki amal tizimga tasodifiy yozuvni kiritish va yozuv tizimidan eng kichigi bilan tanlov kalit. Dasturiy ta'minot tizimlarida ustivor navbatlar juda keng tarqalgan va dasturlarning ishlashi to'g ridan-to'g ri ʻ ʻ ularni amalga oshirish samaradorligiga bog liq. ʻ Ustivorda navbatda qo llab-quvvatlanadigan amallar quyidagilar ʻ hisoblanadi: 1) Insert - navbatga element qo'shish 2) Max - ustivorligi yuqori bo'lgan elementni qaytaradi 3) ExtractMax - navbatdagi eng ustivor elementni olib tashlaydi 4) IncreaseKey - berilgan elementning ustivor qiymatini o'zgartiradi 5) Merge - ikkita navbatni bittaga birlashtiradi 1.1 Binar uyum (kucha) - piramida (binary heap). Binar uyum (binary heap) bu quyidagi shartlarni qanoatlantiradigan binar daraxtdir: - Har qanday uchning ustivorligi, uning avlodlarining ustivorligidan kichik emas.
- Daraxt to'liq ikkilik daraxt bo lishi uchun (complete binaryʻ tree) -barcha darajalar chapdan o'ngga to'ldiriladi (oxirgisi bundan mustasno bo lishi mumkin). ʻ 4 4 MAX 1-rasm. O’smaydigan piramida max-heap Har qanday uchning ustuvorligi avlodlarning ustuvorligidan kichik emas 4 MIN 100 10 36 25 1 17 13 1
2-rasm. Kamaymaydigan piramida min-heap Har qanday uchning ustuvorligi avlodlarning ustuvorligidan katta e mas 2 3 3 6 71 7 1 9 25 100