Mavzu: Massivlarni saralash Ishni maqsadi: Massivlarni saralash usullarini o’rganish Masalani berilishi



Download 19,84 Kb.
bet2/2
Sana28.06.2022
Hajmi19,84 Kb.
#713776
1   2
Bog'liq
3-Лаборатория иши

11

9

7

2

1-o‘tish

2

4

11

9

7

10

2-o‘tish

2

4

11

9

7

10

3-o‘tish

2

4

7

9

11

10

4-o‘tish

2

4

7

9

11

10

5-o‘tish

2

4

7

9

10

11

1-rasm. Tanlash usulida saralash

Algoritmning C++ da amalga oshirilish:
for( i = 0; i < N-1 ; i ++ ) {
nMin = i ;
for ( j = i+1; j < N; j ++)
if( A[j] < A[nMin] ) nMin = j;
if( nMin != i ) {
c = A[i];
A[i] = A[nMin];
A[nMin] = c;
}
}
Dasturning to ‘liq matni:
#include
int main()
{ int N, i , j, c, k, nMin;
int A[100];
cin>>N;
for (i=0; i>A[i];
for( i = 0; i < N-1 ; i ++ ) {
nMin = i ;
for ( j = i+1; j < N; j ++)
if( A[j] < A[nMin] ) nMin = j;
if( nMin != i ) {
c = A[i];
A[i] = A[nMin];
A[nMin] = c;
}
}
for (i = 0; i < N; i++) cout<}

в)Almashtirish usuli. Bu usul bilan saralashda tartibga solinadigan ketma-ketlik xotiraning dastlabki ketma-ketlik joylashgan erida tashkil etiladi. Saralash jarayonida qo’shni elementlar juftlab solishtiriladi. Agar solishtirilayotgan elementlar o’rtasidagi tartib buzilgan bo’lsa ularning joylari almashtiriladi. Bu almashtirish usuli ko’pincha pufakcha usuli deb ham ataladi, chunki eng kichik elementlar har bir o’tishda xuddi pufakchalarga o’xshab ketma-ketlikning birinchi pozisiyasi yo’nalishida «qalqib» chiqadi. 2-rasmda pufakcha usulida saralash namunasi keltirilgan. Birinchi o’tish davomida A1 va A2 elementlari solishtiriladi. Agar A2
Har bir keyingi o’tishda navbatdagi eng katta elementlar tegishlicha N - 1, N - 2 va hokazo pozisiyalarni egallaydi, natijada tartibga solingan massiv tuziladi.
Har bir o’tishdan so’ng ushbu o’tish davomida joy almashtirishlar bo’lgan-bo’lmaganligini tekshirib qo’yish mumkin. Agar joy almashtirishlar bo’lmagan bo’lsa, bu ketma-ketlik tartibga solinganligi va keyingi o’tishlar talab etilmasligini bildiradi. O’tishlar davomida almashtirishda ishtirok etadigan oxirgi element (2-rasmda bu elementlar qo’sh chiziq bilan chizilgan) qayd etiladi. Navbatdagi o’tishda tagiga chizilgan element va barcha undan keyingi elementlar solishtirishda ishtirok etmaydi, chunki shu pozisiyadan boshlab ketma-ketlik tartibga solingan bo’ladi.

i

A[i]

1-o‘tish

2-o‘tish

3-o‘tish

4-o‘tish

5-o‘tish

1

10

4

4

4

4

2

2

4

10

9

7

2

4

3

11

9

7

2

7

7

4

9

7

2

9

9

9

5

7

2

10

10

10

10

6

2

11

11

11

11

11

2-rasm. Almashtirish usulida saralash

Algoritmning C++ da amalga oshirilish:


for (i = 0; i < N-1; i ++){
for (j = N-2; j >= i ; j --)
if ( A[j] > A[j+1] ) {
с = A[j];
A[j] = A[j+1];
A[j+1] = с;
}
}
Dasturning to ‘liq matni:
#include


int main()
{
int N, i , j, c; int A[100]; cin>>N;
for (i=0; i>A[i];
for (i = 0; i < N-1; i ++){
for (j = N-2; j >= i ; j --)
if ( A[j] > A[j+1] ) {
c = A[j];
A[j] = A[j+1];
A[j+1] = c;
}
}
for (i = 0; i < N; i++) cout<
return 0;
}
Download 19,84 Kb.

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