Saralash algoritmlashning to’rt asosiy yo’nalishlaridan biri hisoblanadi. Saralash deb,berilgan obyektlar ketma-ketligini ma’lum mantiqiy tartibda qayta joylashtirishga aytiladi



Download 0,86 Mb.
bet1/2
Sana13.07.2022
Hajmi0,86 Mb.
#788737
  1   2
Bog'liq
alm


O‘ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI

MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT


AXBOROT TEXNOLOGIYALARI UNIVERSITETI

Fan: Algaritmlarni loyihalash


Mustaqil ish

Mavzu: Elementlar jamlanmasini tartiblashtirish algoritmi


Bajardi: Najmiddinov Nodirbek
Guruh: 217-20

Saralash algoritmlashning to’rt asosiy yo’nalishlaridan biri hisoblanadi.Saralash deb,berilgan obyektlar ketma-ketligini ma’lum mantiqiy tartibda qayta joylashtirishga aytiladi. Saralash bir necha ko’rsatkichlarga bog’liq bolishi mumkin. Misol uchun maktab jismoniy tarbiya darsi. Bu dars boshida bolalar bo’ylariga qarab safda turishadi. Meyor topshirish jarayonida esa sinf jurnalidagi familyalar ketma-ketligiga qarab topshirishadi. Shu yerning ozida 2ta saralashdan foydalanilyapti. Biri, bo’y uzunligi boyicha, ikkinchisi sinf jurnalidagi o’rinlar boyicha.Saralash jarayoni qanday kechadi? Saralash jarayoni taqqoslashga asoslangan jarayon hisoblanadi. Bu jarayonni his qilish uchun miyamizdagi tezlik bilan kechayotgan jarayonlarni birma-bir tahlil qilib chiqamiz(buning uchun saralanmagan sonlar ketma-ketligini olamiz):Sonlar berilishi: 23, 54, 3, 22, 1, 45;Eng kattasini boshiga otkazamiz: 23, 3, 22, 1, 45, 54;(54 soni har bir son bilan solishtirilib eng katta ekani aniqlandi, 45 esa oz o`rnida turibdi)Shu tartibni davom ettiramiz: 3, 22, 1, 23, 45, 54;(23 undan keyinda turuvchi eng katta son).Yuqoridagi amalni yana davom ettiramiz: 3, 1, 22, 23, 45, 54;(22 esa davomchi).Oxirgi marta almashtirishimiz quyidagi natijani beradi: 1, 3, 22, 23, 45, 54;(1 eng kichigi).


Demak, miyamiz xuddi shu jarayonni takrorlar ekan. Endi bizga malumki, bizning miyamiz ozi optimal deb bilgan yonalishdan ketadi va biz uchun faqat bitta saralash algoritmi mavjud. Ammo dasturlashda bunday deb bolmaydi. Dasturlashga talab ortib, bu soha rivojlanib borgani sari unda bir qator sohalardagi kabi tezlikni oshirish muammosi paydo boladi. Chunki ilk kompyuter tizimlarida kompyuter tizimining 30% tezligi, operativ xotirasi saralashga sarflanar edi. Shu orinda savol tugiladi, operatsion tizimlarda ham saralashdan foydalaniladimi? Albatta ha! Fikrimiz isbotini hozirda keng foydalaniladigan Total Commander dasturi isbotlaydi. Unda bir necha xil saralash mavjud: fayl turi, nomi, ozgartirilgan sanasi va o’lchami. Har birini o’sish yoki kamayish tartibida saralash mumkin. Ha aytgancha, hozirgi tizimlar 30% emas anchagina kamroq tezlik va xotira sarflashadi. Chunki tezlik masalasi tobora yuqori cho’qqiga chiqayotgan va ishlanayotgan malumotlar o’lchami oshib borayotgan bir paytda sekin ishlovchi algoritmlardan foydalanish kulguli. Malumotlar o’lchamlari esa juda katta, shu sabali ularni aniq va tez saralashga ehtiyoj mavjud. Buni amalga oshirish uchun esa yangi algoritmlarga ehtiyoj tug’ila boshladi. Buni yechimi sifatida bir necha turdagi algoritmlardan foydalaniladi. Ular:

1.Bubble sort;


2.Selection sort;
3.Insertion sort;
4.Quick sort;
5.Merge sort.
Quyida bu sortlash algaritmlari haqida batafsil ma’lumot berilgan;
“Bubble sort” bu eng sodda, ketma-ketlikdagi har bir sonni boshqa sonlar bilan solishtirishga, asoslangan algoritm hisoblanadi. Unda solishtirish natijasida son noto’g’ri o’rinda turganligi aniqlansa, son o’rni almashtiriladi. Bu jarayon almashtirish kerak bo’lmay qolguncha davom etadi, yani kerakli ketma-ketlikka kelguncha. Bu jarayonni to`liqroq tushunish uchun quyidagi rasmdan foydalanamiz:

“Bubble sort” eng ko’p vaqt talab qiluvchi saralash algoritmi hisoblanadi. Chunki unda n ta element uchun takrorlanishlar soni n*n ga teng. Bu, n kichik son bolsa unchalik sezilmaydi. Sababi, hozirgi zamonaviy kompyuterlar uchun bu takrorlanish soni qiyinchilik tugdirmaydi. Ammo butun boshli malumotlar bazasidagi malumotlarni saralash talab etilsachi? Albatta vaqtdan yutqazamiz. Ammo, bu algoritm saralash algoritmlarini tushunib olish uchun ilk qadam hisoblanadi. Endi esa, bu algoritmlani kodga o’giramiz:
public class BubbleSort { public static void bubble_srt(int massiv[]) {
// funksiyamizga saralash uchun saralanmagan bir o`lchamli massiv kiritiladi
int n = massiv.length; int k; for (int m = n; m >= 0; m--) {
for (int i = 0; i < n - 1; i++) {
k = i + 1; if (massiv[i] > massiv[k]) {
almashtirish(i, k, massiv);//almashtirish uchun alohida funksiya
}
}
chiqarish(massiv);//chop etish uchun alohida funksiya
}
}
private static void almashtirish(int i, int j, int[] massiv) {
int temp; temp = massiv[i]; massiv[i] = massiv[j]; massiv[j] = temp;
}
private static void chiqarish(int[] input) {
for (int i = 0; i < input.length; i++) {
System.out.print(input[i] + ", ");
}
System.out.println("\n");
}
public static void main(String[] args) {
int[] saralanmagan = { 4, 2, 9, 6, 23, 12, 34, 0, 1 }; bubble_srt(saralanmagan);
}

Download 0,86 Mb.

Do'stlaringiz bilan baham:
  1   2




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish