birlashtirish orqali saralash (merge sort) algoritmi

DOCX 1 стр. 487,5 КБ Бесплатная загрузка

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

Прокрутите вниз 👇
1 / 1
4-laboratoriya ishi mavzu: birlashtirish orqali saralash birlashtirish orqali saralash(merge sort) algoritmi. bu algoritm jon fon neyman tamonidan 1946 yilda taklif qilingan. jon fon neyman vengriyalik olim bo’lib matematika, kvant fizikasi, funksional analiz, to’plamlar nazariyasi, ekonomika, informatika kabi fanlarga munosib hissa qo’shgan. bo’lib tashla va hukmronlik qil metodi. · algoritmlarni qurishning asosiy metodlaridan biri. · murakkab masalani yechish uchun, uni oddiyroq bo’laklarga ajratish kerak. massivni ham huddi shunday saralash mumkin: · uni ikkita bo’lakga ajratamiz. · bo’laklarni alohida saralaymiz. · saralangan massivlarni birlashtiramiz. saralangan massivlarni birlashtirish. · ikkita saralangan massiv berilgan. ularni birlashtirib shunday massiv hosil qilish qilish kerakki, u yana saralangan bo’lsin. · xar safar hali ikki massivning hali ko’rilmagan qismlaridagi birinchi ikki elementni taqqoslaymiz. ulardan kichigini olamiz. bu jarayonni toki bitta massivning chetigacha chiqmagunga qadar davom ettiramiz. ortib qolgan massiv elementlarini esa to’g’ridan to’g’ri natijaviy massiv iziga berilgan tartibda joylashtirib qo’yamiz. masalan quyida ikki saralangan massivlarni birlashtirib, saralangan bitta …
2 / 1
siya xisoblanadi. oddiy usulda barcha juftliklarni ko’rib chiqish o(n2) amal talab qiladi. merge sort algoritmida massivning ikki saralangan qismini saralangan-ligini saqlab qolgan holda birlashtirishda inversiyalar sonini hisoblab boramiz. masalan: · 5 8 15 29 32 va 7 18 20 25 yangi massivga dastlab 5 ni olamiz. 5 ikkinchi qismning birinchi sonidan katta bo’lmagani uchun qolganlaridan ham katta emas demak u bilan bog’liq inversiya yo’q. ikkinchida 5 ketgach qolgan qismlar boshidagi sonlardan minomali 7 va u ikkinchi qismda. birinchi qismda undan katta bo’lgan 4 ta son bor(8, 15, 29, 32). demak inversiyalar sonini 4 ga ortiramiz. shuq tariqadavom etasi. · int p1 = l, p2 = m+1; · int p = l; · while (p1 a[j]bo’lsin. kiruvchi ma’lumotlar birinchi qatorda n natural soni berilgan(1≤n≤105). ikkinchi qatorda n ta butun son –massiv elementlari bitta probel bilan ajratib berilgan. massiv elementlari modul jihatdan109 dan oshmaydi. chiquvchi ma’lumotlar bitta sonni – masalaning javobini chiqaring. …
3 / 1
nisbatan tartibi o’zgarmay qoldirilsin. kiruvchi ma’lumotlar birinchi qatorda sart berilgan. u kichik lotin alfaviti harflaridan va probellardaniborat bo’lishi mumkin. so’zlar bir-biridan bitta probel bilan ajratilgan. satr bo’sh emasva uzunligi 1000 belgidan oshmaydi. chiquvchi ma’lumotlar saralangan so’zlarni birinchi qatorda bitta probel bilan ajrtib chiqaring. misollar № kiruvchi ma’lumotlar chiquvchi ma’lumotlar 1 umida anora marhabo anora marhabo umida 6-topshiriq bir o’lchamli butun sonlardan iborat massiv berilgan. uning elementlar qiymatlari -109 dan109 gacha bo’lishi mumkin. ma’lumki, undagi har xil sonlar soni uning elementlar soni n danoshmaydi. massiv elementlarini qayta qiymatlash da quyidagi shartlar bajarilishi kerak: 1) qayta qiymatlashda ishlatiladigan eng minimal son 1 bo’lishi kerak. 2) qayta qiymatlashda ishlatiladigan maksimal son iloji boricha eng kichik bo’lishi kerak. 3) bir xil qiymatli elementlarning qayta qiymatlangach ham qiymatlari bir xil bo’lishikerak. 4) avvalgi qiymati katta bo’lgan songa kattaroq qiymat berilishi kerak. qayta qiymatlash orqali elementlarning asil qiymati yo’qoladi, lekin ularning tenglik, katta-kichiklik haqidagi ma’lumot saqlanib …
4 / 1
berilish tartibida bitta probel bilan ajratib chiqaring. misollar № kiruvchi ma’lumotlar chiquvchi ma’lumotlar 1 10 -8 1 -4 6 1 6 6 9 -4 -8 10 1 2 3 4 5 6 7 8 9 10 1 3 2 4 3 4 4 5 2 1 7-topshiriq 1-kurs talabalari endi c++ fanidan saralash algoritmlarini o’rganishni boshlashdi. birinchi bo’lib pufakchali saralash algoritmini o’rganishdi. pufakchali saralash usuli o(n2) amal talab qiluvchi algoritmlardan biri. unda jami n-1 ta iteratsiya bo’lib, har bir iteratsiyada qo’shni elementlar taqqoslanadi va ular noto’g’ri tartibda joylashgan bo’lsa ularning o’rni almashtiriladi. har bir iteratsiyada navbatdagi eng katta son o’z joyini topib boradi: long long k = 0; for (int i = n; i >= 2; i--) { for (int j = 1; j a[j+1]) { int t = a[j]; a[j] = a[j+1]; a[j+1] = t; k++; } } } cout b[j] shart bajarilsa u holda j-kesma i-kesma ichiga tushadi. …
5 / 1
.png image6.png image7.png image8.png image9.png image10.png image11.png image12.png image13.png image14.png image1.png image2.png image3.png

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

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

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

О "birlashtirish orqali saralash (merge sort) algoritmi"

4-laboratoriya ishi mavzu: birlashtirish orqali saralash birlashtirish orqali saralash(merge sort) algoritmi. bu algoritm jon fon neyman tamonidan 1946 yilda taklif qilingan. jon fon neyman vengriyalik olim bo’lib matematika, kvant fizikasi, funksional analiz, to’plamlar nazariyasi, ekonomika, informatika kabi fanlarga munosib hissa qo’shgan. bo’lib tashla va hukmronlik qil metodi. · algoritmlarni qurishning asosiy metodlaridan biri. · murakkab masalani yechish uchun, uni oddiyroq bo’laklarga ajratish kerak. massivni ham huddi shunday saralash mumkin: · uni ikkita bo’lakga ajratamiz. · bo’laklarni alohida saralaymiz. · saralangan massivlarni birlashtiramiz. saralangan massivlarni birlashtirish. · ikkita saralangan massiv berilgan. ularni birlashtirib shunday massiv hosil qilish qilish kera...

Этот файл содержит 1 стр. в формате DOCX (487,5 КБ). Чтобы скачать "birlashtirish orqali saralash (merge sort) algoritmi", нажмите кнопку Telegram слева.

Теги: birlashtirish orqali saralash (… DOCX 1 стр. Бесплатная загрузка Telegram