C Programlama Örnek Selection Sort (Seçerek Sıralama)

Verinin hafızada sıralı tutulması için geliştirilen sıralama algoritmalarından  (sorting algorithms) Selection Sort (Seçerek Sıralama) algoritmasında uygulanan her adımda eldeki dizinin en küçük elemanı bulunuyor ve en başa atılıyor. Bu işlem her seferinde tekrarlanıyor. Dizinin sonuna gelindiğinde dizimiz küçükten büyüğe sıralanmış oluyor. Büyük sayıda verileri sıralamak için elverişsizdir. Bubble Sort algoritmasının iyileştirilmiş biçimi sayılır.






#include <stdio.h>

int main()
{
   int dizi[100], s, x, y, pw, t;

   printf("LUTFEN DIZI ICIN ELEMAN SAYISINI GIRINIZ\n");
   scanf("%d", &s);

   printf("%d ELEMANA AIT DEGERLERI GIRINIZ\n", s);

   for ( x = 0 ; x < s ; x++ )
      scanf("%d", &dizi[x]);

   for ( x = 0 ; x < ( s - 1 ) ; x++ )
   {
      pw = x;

      for ( y = x + 1 ; y < s ; y++ )
      {
         if ( dizi[pw] > dizi[y] )
            pw = y;
      }
      if ( pw != x )
      {
         t = dizi[x];
         dizi[x] = dizi[pw];
         dizi[pw] = t;
      }
   }

   printf("ARTAN SIRAYA GORE LISTELEME:\n");

   for ( x = 0 ; x < s ; x++ )
      printf("%d\n", dizi[x]);

   return 0;
}