C Programlama Selection Sort(Seçmeli Sıralama)

Öncelikle Seçmeli Sıralama’nın mantığını anlatmaya çalışacağım, sonrasında ise bir örnekle devam edeceğim. Seçmeli sıralamada, sırası ile tüm elemanlar ele alınıp, dizinin sonuna kadar o elemandan küçük eleman olup olmadığı kontrol edilir ve en küçük eleman bulunup eldeki sayı ile değiştirilir.
 Daha açık anlatmak gerekirse , listenin 1. elemanın değeri alınır ve dizinin sonuna kadar tüm elemanlar kontrol edilir en küçük eleman bulunur ve 1. sıradaki eleman ile yer değiştirilir. Artık en küçük eleman 1. sırada yer almaktadır. 1. sıradaki elemanı tekrardan kontrol etmek gerekmediği için 2.sıradaki elemana geçilir ve aynı işlem tekrarlanarak son elemana kadar gidilir.

Gördüğünüz gibi öncelikle 7 yi ele alarak 7 den küçük, en küçük eleman bulunmuş (1) ve yerleri değiştirilmiş. Sonrasında 4 ele alınarak ondan küçük en küçük eleman(2) ile yer değiştirilerek sıralamaya devam edilmiş.

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include <windows.h>
int main(){
 system("color 5a");
int dizi[5]={13,100,75,12,38};
int i,j,min,gecici;
for(i=0;i<4;i++)
{
 min=i;
 for(j=i+1;j<5;j++)
 {
  
 if(dizi[j]<dizi[min])
 { min=j;}
 }
  gecici=dizi[min];
  dizi[min]=dizi[i];
  dizi[i]=gecici;
  
}//Arkadaşlar burda  3 degişkenler işlem yürütülmektedir.Daha iyi kodu anlamak istiyorsanız bir kagıt birde kaleme ihitiyacnız var:)

for(i=0;i<5;i++)
{   
 
 
 printf("%d\t",dizi[i]);
}

system("pause");
return 0;
}

Yorum Gönder

0 Yorumlar