O’zbekiston Respublikasi Axborot Texnologiyalari va Komunikatsiyalarini rivojlantirish Vazirligi Muhammad al
Download 270.43 Kb. Pdf ko'rish
|
BaratovCAL023-N11
- Bu sahifa navigatsiya:
- Algoritmlash va loyihalashtirish fani Mustaqil ish
- 1.Saralash algoritmlari haqida ma’lumot
- 2.Saralash algoritmlari turlari
- Saralashning pufakcha usuli
- Saralashning Tezkor usuli
O’zbekiston Respublikasi Axborot Texnologiyalari va Komunikatsiyalarini rivojlantirish Vazirligi Muhammad al- Xorazmiy nomidagi Toshkent Axborot Texnologiyalari Universiteti Algoritmlash va loyihalashtirish fani Mustaqil ish Mavzu: Saralash algoritmlari baxolashning quyi chegaralari Guruh:CAL023-guruh Bajardi:Baratov Muslimbek Tekshirdi:Dilmurod Tuxtanazarov Toshkent-2020 Reja: 1.Saralash algoritmlari haqida ma’lumot 2.Saralash algoritmlari turlari 3.Saralash algoritmlarini baholash
1.Saralash algoritmlari haqida ma’lumot Malumotlarni kompyuterda qayta ishlashda elementning informatsion maydoni va uning mashina xotirasida joylashishini bilish zarur. Shu maqsadda ma’lumotlarni saralash amalga oshiriladi. Demak, saralash – bu ma’lumotlarni kalitlari bo’yicha doimiy ko’rinishda mashina xotirasida joylashtirishdan iborat. Bu yerda doimiylik malumotlarni massivda kalitlari bo’yicha o’sishi tartibida berilishi tushuniladi. Ma’lumotlarga qayta ishlov berilayotganda ma’lumotning informatsion maydonini hamda uning mashinada joylashishini (adresini) bilish zarur. Saralashning ikkita turi mavjud: ichki va tashqi: ichki saralash bu operativ xotiradagi saralash; tashqi saralash – tashqi xotirada saralash. Agar saralanayotgan yozuvlar xotirada katta hajmni egallasa, u holda ularni almashtirishlar katta sarf (vaqt va xotira ma’nosida) talab qiladi. Ushbu sarfni kamaytirish maqsadida, saralash kalitlar adresi jadvalida amalga oshiriladi. Bunda faqatgina ma’lumot ko’rsatkichlari almashtirilib, massiv o’z joyida qoladi. Bu usul adreslar jadvalini saralash usuli deyiladi. Saralanayotganda bir xil kalitlar uchrashi mumkin, bu holda saralangandan keyin bir xil kalitlilar boshlang’ich tartibda qanday joylashgan bo’lsa, shu tartibda qoldirilishi maqsadga muvofiq bo’ladi (Bir xil kalitlilar o’zlariga nisbatan). Bunday usulga turg„un saralash deyiladi. Saralash samaradorligini bir necha mezonlar bo’yicha baholash mumkin: saralashga ketgan vaqt; saralash uchun talab qilingan operativ xotira; dasturni ishlab chiqishga ketgan vaqt. Birinchi mezonni qarab chiqaylik. Saralash bajarilganda taqqoslashlar yoki almashtirishlar sonini hisoblash mumkin. Faraz qilaylik, N = 0,01n2 + 10n – taqqoslashlar soni. Agar n < 1000 bo’lsa, u holda ikkinchi qo„shiluvchi katta, aks holda ya’ni, n > 1000 bo’lsa, birinchi qo’shiluvchi katta bo„ladi. Demak, kichkina n larda taqqoslashlar soni n ga teng bo’ladi, katta n larda esa n2 ga teng bo„ladi. Saralashda taqqoslashlar soni quyidagi oraliqlarda bo„ladi: nnO log dan 2nO gacha; nO – ideal holatda. Saralashning quyidagicha usullari bor: Qat’iy (to’g’ridan-to’g’ri) usullar; yaxshilangan usullar. Qat’iy usullarning afzalliklarini ko„rib chiqaylik: 1. Bilamizki, dasturlarning o’zlari ham xotirada joy egallaydi. To’g’ridan- to’g’ri saralash usullarining dasturlari qisqa bo’lib, ular tushunishga oson.
2. To’g’ridan-to’g’ri saralash usullari orqali saralash tamoyillarining asosiy xususiyatlarini tushuntirish qulay. 3. Murakkablashtirilgan usullarda uncha ko’p amallarni bajarish talab qilinmasada, ushbu amallarning o’zlari ham ancha murakkabdir. Garchi yetarlicha katta n larda ulardan foydalanish tavsiya etilmasada, kichik n larda mazkur usullar tezroq ishlaydi. Shu joyni o’zida qat’iy usullarni ishlash tamoyillariga ko’ra 3 ta toifaga bo’lish mumkin: 1. To’g’ridan-to’g’ri qo’shish usuli (by insertion); 2. To’g’ridan-to’g’ri tanlash usuli (by selection); 3. To’g’ridan-to’g’ri almashtirish usuli (by exchange). 2.Saralash algoritmlari turlari Saralash algoritmlari. 1. Tanlash usuli; 2. Almashtirish usuli (pufakcha); 3. Qo’yish usuli;
Saralashning tanlash usulida n ta massiv elementlari beriladi. Birinchi navbatda berilgan N ta massiv elementlari orasidan minimumini topib dastlabki element bilan almashtiriladi. Keyin massiv elementlarining keyingi N-1 ta elementlari ichidan minimumi topilib ikkinchi element bilan almashtiriladi. Barcha elementlar saralangangunga qadar davom etadi. Saralashning bu usulida solishtirishlar soni (N- 1)N/2. Saralashning tanlash usuli N massiv miqdori kattalashgani kabi ishlash vaqti cho’ziladi, demak elementlar soni juda ko’p bo’lgan massivlar uchun saralashning ushbu usuli ko’p vaqt talab qiladi.
Saralashning Qo’yish usuli
Saralashning Qo’yish usulida berilgan A massiv elementlari berilgan bo’sh B massiv elementlarining mos joyiga qo’yiladi. Ya’ni A massivning birinchi elementi b massivning birinchi elementiga joylashtiriladi. Keyingi qadamda A massivning ikkinchi elementi B massivning birinchi elementi bilan solishtiriladi katta kichikligiga qarab B massivning ikki elementidan joy oladi va hokazo. Natijada B massivda A massivning saralangan qismi hosil bo’ladi.
Saralashning pufakcha usuli Saralashning almashtirish usulida berilgan massivning har bir elementlari o’zining qo’shni elementlari bilan solishtiriladi va katta kichikligiga qarab almashtiriladi. Saralashning ushbu usulida ham elementlar N(N-1)/2 ta solishitiriladi. Saralashning almashtirish usuli N massiv miqdori kattalashgani kabi ishlash vaqti cho’ziladi, demak elementlar soni juda ko’p bo’lgan massivlar uchun saralashning ushbu usuli ham ko’p vaqt talab qiladi.
Saralashning Shell usuli
1959 yilda D.L.Shell tomonidan taklif etilgan va keng foydalaniladigan bu usul juda kam xotira talab etadi va saralashda yuqori tezlikni ta’minlaydi. Qo’yish usuli kabi Shell usuli elementlarni solishtirish va joyini almashtirishdan foydalanadi, lekin undan farqli o’laroq solishtirishda qo’shni elementlar emas, balki bir-biridan muayyan masofada bo’lgan elementlar solishtiriladi. Almashtirish zaruriyati tug’ilganida, elementlar qo’yish usulidagi kabi bitta pozisiyaga emas, shu masofaning o’ziga sakrab o’tadi.
Saralashning Tezkor usuli Saralashning tezkor(inglizcha - quicksort) usuli saralash usullari ichida eng samarali(vaqtga nisbatan) usul hisoblanadi.Saralashning Tezkor usulida rekursiya(o’ziga o’zi murojaat)dan foydalaniladi. Saralashning ushbu usulida berilgan N ta massiv elementlarini teng(bir-biridan ko’pi bilan1 birlikka farq qiluvchi) ikki qismga ajratiladi va o’rtadagi element bilan massivning ikki qismi solishtiriladi va shart bajarilsa almashtiriladi.Nihoyat, o’rtadagi elementga massiv elementlarining o’rtacha qiymatdagisiga aylanadi. Shu jarayon massivning ikki qismi uchun qayta murojaat qilinadi va hokazo.
Download 270.43 Kb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling