1
Saralashning qat’iy va yaxshilangan usullari va ularning qo’llanilishi.
Saralashning ikkita turi mavjud:
ichki
va
tashqi
:
-ichki saralash - 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,01n
2
+ 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
n
2
ga teng bo’ladi.
Saralashda taqqoslashlar soni quyidagi oraliqlarda bo’ladi:
1 dan n gacha; – 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.