Selection sort sıralamasında yapılan işlem dizi elemanlarına birer birer bakarak büyük ve küçüklük kontrolü yapmak ardından elemanları swap etmektir.
Bu işlem için ise bir geçici değişken tanımlanır.
Ardından bu değer swap edilecek iki elemandan birine atanır.
Bir örnekle açıklayalım.
int temp = dizi[0];
Dizinin ilk elemanını temp adlı değişkene atadık.
dizi[0] = dizi[1];
Dizinin ikinci elemanın değerini dizinin ilk elemanına atadık.
dizi[1] = temp;
Burada ise dizinin ilk elemanının değerini dizinin ikinci elemanına atadık.

Swap işlemi temel olarak bu şekildedir.
Aşağıda örnek selection c kodu bulunmaktadır.
#include
#include
int main()
{
int dizi[10];
for(int i=0;i<10;i++)
dizi[i]=rand()%10;
printf("Before selection sort:\n");

for(int i=0;i<10;i++)
printf("%d ",dizi[i]);

for(int i=0;i<10;i++)
{
int temp;
for(int j=0;j<=i;j++)
{
if(dizi[i]>dizi[j])
{
temp = dizi[i];
dizi[i] = dizi[j];
dizi[j] = temp;
}
}
}

printf("\nAfter selection sort:\n");

for(int i=0;i<10;i++)
printf("%d ",dizi[i]);

printf("\n");
system("pause");
return 0;
}

Kolay Gelsin.