Saralashdan asosiy maqsad - saralangan ma’lumotlarni qayta ishlash jarayonida zarur bo’ladigan elementni tez va oson qidirib topishni soddalashtirishdan iborat.
Mavjud saralash algoritmlarini ikki guruhga ajratish mumkin:
• ichki saralash algoritmlari (massivda saralash);
• tashqi saralash algoritmlari (faylda saralash).
Massivda saralash. Odatda massivlar ixtiyoriy jarayonlarni tez amalga oshirishni ta’minlovchi tezkor xotirada joylashadi. Massivlarni saralash algoritmlarining asosiy xususiyati tezkor xotirada ishlashni minimallashtirishdan iborat. Bunda elementlarni qayta joylashtirish jarayoni tezkor xotiraning o’zida bajarilishi shart.
Massivlarda saralash usullarini 3 ta sinfga ajratish mumkin:
• qo’yish orqali saralash;
• tanlash asosida saralash;
• almashtirish orqali saralash.
Faylda saralash. Fayllar sekin ishlovchi, lekin kattaroq hajmdagi tashqi xotirada saqlanadi. Agarda saralanadigan ma’lumotlar ketma-ket kirish mumkin bo’lgan tuzilmalarda saqlanayotgan bo’lsa, bunday tuzilmalarga massivda saralash algoritmlarini qo’llab bo’lmaydi. Chunki, ketma-ket kirishga ruxsat berilgan tuzilmalarda vaqtning har bir momentida faqat va faqat bitta komponentga murojaat qilish mumkin bo’ladi.
a) To’g’ridan-to’g’ri qo’yish orqali saralash algoritmi Algorotmning asosiy g’oyasi: Massiv elementlari shartli ravishda oldindan tayyorlangan ketma-ketlik a1, a2, ..., ai-1 va kiruvchi ketma-ketlik ai, ai+1, ..., an kabi qismlarga ajratib olinadi.
Oldindan tayyor ketma-ketlikda har bir i-element qulay joyga joylashtiriladi.
b. To’g’ridan-to’g’ri tanlash usuli To’g’ridan-to’g’ri tanlash usuli qandaydir ma’noda to’g’ridan-to’g’ri qo’yish usuliga ziddir. Bu yerda suriladigan elementlar faqat bitta bo’ladi va har bir surishdan keyin elementlarni taqqoslashlar soni bittaga kamayadi. Bu jarayon elementlar tugaguncha davom etadi.
Stek - massiv tuzilmasidan farqli ravishda, elementlarni kiritish yoki
chiqarib tashlashga imkon beradigan o’zgaruvchan o’lchamning chiziqli
tuzilmasidir, ya’ni stekda ma’lumotlar hajmi dasturning bajarilishi vaqtida uyg’un
ravishda oshishi va kamayishi mumkin.
Stekli tuzilmaning xususiyati shundan iboratki, elementlardan erkin
foydalanish, elementlarni kiritish va chiqarib tashlash faqat tuzilmaning bir
tomonidan - stek cho’qqisidan mumkin bo’ladi. SHuning uchun stekka oxirida
kiritilgan element birinchi bo’lib o’qiladi yoki tanlanadi. Bunday tuzilmada
axborot «oxirida keldi, birinchi ketdi» tamoyili bo’yicha qayta ishlanadi. Stekning
tuzilmasini ba’zan LIFO (inglizcha Last In, First Out) tipidagi tuzilma deyiladi, bu
qachonki faqat yuqoridagi likobchani olish mumkin bo’lgan likobchalar to’plami
misolida yaxshi tushuniladi. Avval yuqoridagi likobchani, so’ngra keyingisini
olish mumkin. Likobchalar to’plamning yuqori qismiga bittadan qo’shiladi.
Stekning tuzilmasi erkin foydalanish cheklangan ma’lumotlar tuzilmasi
hisoblanadi, chunki faqat stekning cho’qqisida joylashgan elementdan erkin
foydalanish mumkin bo’ladi. Bu element joriy elementdeb ataladi. Joriy
elementning joyi to’g’risidagi axborot odatda stekning bosh uyasida joylashadigan