ma’lumotlar tuzilmasi va algoritmlar

PPTX 9 стр. 1,3 МБ Бесплатная загрузка

Предварительный просмотр (5 стр.)

Прокрутите вниз 👇
1 / 9
prezentatsiya powerpoint ikkilik daraxtga element qo’shish, element o’chirish va qidiruv algoritmlari guruh: swd025 bajardi: rahmatov o` tekshirdi: ganixodjaeva d mustaqil ish toshkent2022 ma’lumotlar tuzilmasi va algoritmlar 1 reja: asosiy tushuncha va ta’riflar. ikkilik qidiruv daraxti rekursiv algoritm parallel algoritmlar asosiy tushuncha va ta’riflar ma’lumotlar tuzilmasi bu xotirada tashkil etiladigan elementlar yig’indisi bo’lib, ular ustida dastur yordamida amallar bajariladi. ma’lumotlar tuzilmasi – bu bironta toifaga tegishli bo’lgan va o’zaro ma’lum munosabatga ega bo’lgan elementlar to’plamiga aytiladi. ma’lumot – bironta qiymat yoki qiymatlar to’plami hisoblanadi.misol uchun bu bironta eksperiment natijalari, yoki talabalarning imtixon ballari bo’lishi mumkin. ma’lumotlar tuzilmasi elementi – bu qiymatlar to’plamining bir bo’lagi hisoblanadi. tuzilma elementi – qiymatlar jamlanmasi bo’lib, misol uchun talabalarning ismi, sharifi, yoshi har bir fandan olgan bahosi va x.k. larni keltirish mumkin. elementlar 2 taga bo’linishi mumkin: element sifatida ma’lumotlar guruhi olib qaraladi. bunda e;lementlar yana qism bo’lak;arga bo’linishi mumkin. masalan, ota-onalar maydoni talabalarning ota va …
2 / 9
an ko'rsatilgan ma'lumot bitta ma'lumot elementi emas, balki yozuvdir. biroq, ketma-ketlik maqsadida tugunlar o'zlarining tegishli yozuvlarining biron bir qismiga emas, balki ularning kalitlariga qarab taqqoslanadi. ikkilik qidiruv daraxtlarining boshqa ma'lumotlar tuzilmalaridan ustunligi shu bilan bog'liqdir algoritmlarni saralash va qidirish algoritmlari kabi tartibda o'tish juda samarali bo'lishi mumkin. ikkilik qidirish daraxtlari asosiy hisoblanadi ma'lumotlar tuzilishi kabi mavhum ma'lumotlar tuzilmalarini qurish uchun foydalaniladi to'plamlar, multisets va assotsiativ massivlar. ikkilik qidiruv daraxtiga elementni kiritishda yoki qidirishda har bir tashrif buyurgan tugunning kalitini kiritilishi yoki topilishi kerak bo'lgan elementning kaliti bilan taqqoslash kerak. ikkilik qidiruv daraxtining shakli butunlay qo'shilish va o'chirish tartibiga bog'liq va buzilib ketishi mumkin. tasodifiy kiritish va yo'q qilishning uzoq aralashgan ketma-ketligidan so'ng, daraxtning kutilgan balandligi tugmalar sonining kvadrat ildiziga yaqinlashadi, √n,[iqtibos kerak ] bu nisbatan tezroq o'sadi jurnal n. daraxtning degeneratsiyasini oldini olish bo'yicha ko'plab tadqiqotlar o'tkazildi, natijada eng yomon vaqt murakkabligi paydo bo'ldi o (n) (batafsil ma'lumot uchun bo'limga …
3 / 9
tomonlama taqqoslash subroutine. ikkilik qidirish daraxtlari uchta asosiy operatsiyani qo'llab-quvvatlaydi: elementlarni kiritish, elementlarni o'chirish va qidirish (kalit mavjudligini tekshirish). ikkilik qidiruv daraxtidan ma'lum bir kalitni qidirish dasturlashtirilishi mumkin rekursiv yoki takroriy ravishda. biz tekshirishni boshlaymiz ildiz tuguni. agar daraxt bo'lsa bekor, biz qidirayotgan kalit daraxtda mavjud emas. aks holda, agar kalit ildizga teng bo'lsa, qidiruv muvaffaqiyatli bo'ladi va biz tugunni qaytaramiz. agar kalit ildizdan kamroq bo'lsa, biz chap pastki daraxtni qidiramiz. xuddi shunday, agar kalit ildizdan kattaroq bo'lsa, biz kerakli pastki daraxtni qidiramiz. ushbu jarayon kalit topilmaguncha yoki qolgan pastki daraxt bo'lguncha takrorlanadi bekor. agar qidirilgan kalit a dan keyin topilmasa bekor pastki daraxtga erishildi, keyin kalit daraxtda yo'q. bu osongina rekursiv algoritm sifatida ifodalanadi (amalga oshiriladi python ): 1 def qidiruv_rekursiv tarzda(kalit, tugun):2 agar tugun == yo'q yoki tugun.kalit == kalit:3 qaytish tugun4 agar kalit tugun.kalit:7 qaytish qidiruv_rekursiv tarzda(kalit, tugun.to'g'ri) xuddi shu algoritmni takroriy ravishda amalga oshirish mumkin: 1 …
4 / 9
diruv daraxtlari bilan tugunlar kalitlarga ega o (log |tugunlar|) balandlik.[1-eslatma] biroq, eng yomon holatda, ikkilik qidiruv daraxtlari bo'lishi mumkin o (|tugunlar|) balandligi, muvozanatsiz daraxt a ga o'xshaganda bog'langan ro'yxat (buzilib ketgan daraxt ). agar buyurtma munosabati faqat oldindan buyurtma bo'lsa, funktsional imkoniyatlarning oqilona kengayishi quyidagicha: tenglik holatida barglargacha qidirish. shu tariqa (yoki qattiq simli) yo'nalishni belgilashga imkon beradi, bu erda dublyajni shu paytgacha daraxtdagi barcha dublikatlardan o'ngga yoki chapga kiritish kerak. agar yo'nalish simli bo'lsa, ikkala tanlov ham, o'ng va chap tomonlarni ham qo'llab-quvvatlang suyakka surish operatsiyasi sifatida nusxasini qo'shish va pop operatsiyasi sifatida o'chirish bilan.[2]:155 1 def search_duplicatesruxsat berilgan(kalit, tugun):2 joriy_tugun = tugun3 esa joriy_tugun != yo'q:4 agar kalit = current_node.key:7 joriy_tugun = joriy_tugun.to'g'ri8 qaytish joriy_tugun a ikkilik daraxt saralash bunday qidiruv funktsiyasi bilan jihozlangan bo'ladi barqaror. kiritish qidiruv boshlanganday boshlanadi; agar kalit ildizga teng bo'lmasa, biz avvalgidek chap yoki o'ng pastki daraxtlarni qidiramiz. oxir-oqibat, biz tashqi tugunga etib …
5 / 9
'ri, kalit, qiymat);} shu bilan bir qatorda, rekursiv bo'lmagan versiya shu kabi qo'llanilishi mumkin. qaerdan kelganligimizni kuzatish uchun ko'rsatgichdan-ko'rsatkichga foydalanish kodni daraxtning ildiziga tugunni kiritishi kerak bo'lgan holatni aniq tekshirish va ko'rib chiqishdan qochishga imkon beradi:[3] bekor kiritmoq(tugun** ildiz, int kalit, int qiymat) { tugun **yurish = ildiz; esa (*yurish) { int kurka = (*yurish)->kalit; agar (kurka == kalit) { (*yurish)->qiymat = qiymat; qaytish; } agar (kalit > kurka) yurish = &(*yurish)->to'g'ri; boshqa yurish = &(*yurish)->chap; } *yurish = yangi tugun(kalit, qiymat);} yuqorisida, yuqoridagi halokatli protsessual variant daraxtni joyida o'zgartiradi. u faqat doimiy yig'ma bo'shliqdan foydalanadi (va takrorlanadigan versiya ham doimiy stack maydonidan foydalanadi), lekin daraxtning oldingi versiyasi yo'qoladi. shu bilan bir qatorda, quyidagi kabi python masalan, biz kiritilgan tugunning barcha ajdodlarini qayta tiklashimiz mumkin; asl daraxt ildiziga har qanday havola haqiqiy bo'lib qoladi va bu daraxtni a qiladi doimiy ma'lumotlar tuzilishi: def binary_tree_insert(tugun, kalit, qiymat): agar tugun == yo'q: …

Хотите читать дальше?

Скачайте все 9 страниц бесплатно через Telegram.

Скачать полный файл

О "ma’lumotlar tuzilmasi va algoritmlar"

prezentatsiya powerpoint ikkilik daraxtga element qo’shish, element o’chirish va qidiruv algoritmlari guruh: swd025 bajardi: rahmatov o` tekshirdi: ganixodjaeva d mustaqil ish toshkent2022 ma’lumotlar tuzilmasi va algoritmlar 1 reja: asosiy tushuncha va ta’riflar. ikkilik qidiruv daraxti rekursiv algoritm parallel algoritmlar asosiy tushuncha va ta’riflar ma’lumotlar tuzilmasi bu xotirada tashkil etiladigan elementlar yig’indisi bo’lib, ular ustida dastur yordamida amallar bajariladi. ma’lumotlar tuzilmasi – bu bironta toifaga tegishli bo’lgan va o’zaro ma’lum munosabatga ega bo’lgan elementlar to’plamiga aytiladi. ma’lumot – bironta qiymat yoki qiymatlar to’plami hisoblanadi.misol uchun bu bironta eksperiment natijalari, yoki talabalarning imtixon ballari bo’lishi mumkin. ma’lumotlar tuzi...

Этот файл содержит 9 стр. в формате PPTX (1,3 МБ). Чтобы скачать "ma’lumotlar tuzilmasi va algoritmlar", нажмите кнопку Telegram слева.

Теги: ma’lumotlar tuzilmasi va algori… PPTX 9 стр. Бесплатная загрузка Telegram