Ushbu massiv elementlarini o’rtacha qiymatining butun qismiga nisbatan ikkiga ajratamiz:
А1(5,1,3,4,2) – birinchi qismmassiv.
А2(6,9,8,7) – ikkinchi qismmassiv.
Har birini alohida saralaymiz:
А1(1,2,3,4,5) –birinchi qismmassiv.
А2(6,7,8,9) – ikkinchi qismmassiv.
A=A1+A2 yangi saralangan massiv hosil qilinadi
viod Sliv(int p,q)
{
int r,i,j,k
r=(p+q) div 2;
i=p; j=r+1;
for (k=p; k<= q; k++)
if (i<=r) and ((j>q) or (a[i]{
b[k]=a[i]; i=i+1;
} else
{
b[k]=a[j]; j=j+1;
}
for (k=p; k<= q; k++)
a[k]=b[k];
}
void Sort(int p,q)
{
if p{
Sort(p,(p+q) div 2);
Sort((p+q) div 2 + 1,q);
Sliv(p,q);
}
}
38. Rekursiya va rekursiv triada nima? Мисоллар ёрдамида тушунтириб беринг.
Rekursiya – o’z-o’zi orqali aniqlanuvchi ob’ekt hisoblanadi. Matematikada rekursiya yordamida bir qancha cheksiz to’plamlarni aniqlash mumkin, masalan, natural sonlar to’plami.
Haqiqatan ham, natural sonlarni quyidagicha ifodalash mumkin:
Natural son:
1 – natural son.
Natural sondan keyin keluvchi son – natural son.
Xuddi shunday faktorial tushunchasi n!=1·2·3·…·(n-1)·n ni ham rekursiya yordamida tushuntirish mumkin: