Almashtirish usuli yordamida massiv elementlarini o‘sib borishda tartiblashtirish algoritmi quyidagicha:
1.Massivning birinchi elementidan boshlab ketma-ket hamma qo‘shni elementlar bir-biri bilan solishtirilib, agar birinchisi ikkinchisidan kichik bo‘lsa ular joyi almashtirilib boriladi.
2.Bu protsess davomida kichik qiymatli elementlar massiv boshiga katta elementlar esa oxiriga siljitilib boriladi. SHu sabab bu usul «puzirka» usuli ham deyiladi.
3.Bu protsess massiv elementlar sonidan bitta kam marta takrorlanadi.
Masalan:
3 2 4 5 1 bunda 3 bilan 2 va 5 bilan 1 almashtiriladi.
2 3 4 1 5 bunda 4 bilan 1 almashtiriladi.
2 3 1 4 5 bunda 3 bilan 1 almashtiriladi.
2 1 3 4 5 bunda 2 bilan 1 almashtiriladi.
1 2 3 4 5
Bu algoritm dasturi quyidagicha bo‘ladi:
Program Sort;
Const n=5;
Var i,j,min,k,buf: Integer; a: Array[1..n] of Integer;
Begin
Writeln (‘Massivni puzirek(kupikcha) usulida tartiblashtirish’);
Write (Size:3,’ta massiv elementini kiriting’);
For k:=1 to n Do Read(a[k]);
Writeln (‘Tartiblatirish’);
For i:=1 to n-1 Do
Begin
For k:=1 to n-1 Do
Begin
If a[k]>a[k+1] then
Begin
buf:=a[k]; a[k]:=a[k+1]; a[k+1]:=buf;
End;
End;
For k:=1 to n Do Write (a[k],’ ‘); Writeln;
End;
Writeln(‘Massiv tartiblashtirildi.’);
End.
Dastur natijasi:
Massivni puzirek usulida tartiblashtirish
5 ta massiv elementini kiriting
3 2 4 1 5
Tartiblashtirish
2 3 4 1 5
2 3 1 4 5
2 1 3 4 5
1 2 3 4 5
Massiv tartiblashtirildi.
Massivda eng kichik yoki eng katta elementni izlash algoritmi ma’lumki birinchi element eng kichik (katta) deb olinib keyin boshka elementlar bilan ketma-ket solishtirilib chiqiladi. Solishtirilish oxirgi elementgacha bajariladi. Quyida bu algoritm dasturi keltirilgan:
Program MinMax;
Var i,min: Integer; a: Array[1..10] of Integer;
Begin
Writeln (‘Massivdan eng kichik elementni izlash’);
Write (’ 10-ta massiv elementini kiriting’);
For i:=1 to 10 Do Read(a[i]);
min:=1;