i=2 dan boshlab har bir qadamda i bir birlikka oshadi, boshlang’ich ketma-ketlikda i-element chiqarib tashlanadi va tayyor ketma-ketlikka joylashtiriladi. Bunda u kerakli joyga qo’yiladi.
To’g’ridan-to’g’ri qo’yish usuli sxemasi
To’g’ridan-to’g’ri qo’yish usuli algoritmi (C++ tilida)
void sort_insertion (key a[], int n)
{ key x;
int i, j;
for (i=1; i
x=a[i];
for (j=i-1; (j>=0)&&(x
a[j+1]=a[j];
a[j+1]=x; }
}
33. To’g’ridan-to’g’ri tanlash usuli algoritmini yozing va uni ishlashini tushuntirib bering?
void sort_selection (key a[], int n)
{ key x;
int i, j, k;
for (i=0; i
k=i;
for (j=i+1; j if (a[k]>a[j])
k=j;
if (i!=k) {
x=a[i]; a[i]=a[k]; a[k]=x; } } }
To’g’ridan-to’g’ri tanlash algoritmning samaradorligi
Taqqoslashlar soni:
O’rin almashtirishlar soni:
34. To’g’ridan-to’g’ri almashtirish usuli algoritmini yozing va uni ishlashini tushuntirib bering?
Ushbu usulni g’oyasi quyidagicha:
marta massivda quyidan yuqoriga qarab yurib kalitlar jufti-jufti bilan taqqoslanadi.
Agar pastki kalit qiymati, undan yuqoridagi juftining qiymatidan kichik bo’lsa, u holda ular o’rni almashtiriladi va h.k.
Do'stlaringiz bilan baham: |