Selection sort bir sıralama algoritmasıdır. Karmaşık bir dizide en küçük olanı bulur. Bu sayıyı dizinin en başındaki elemanla yer değiştirir. O(n^2) karmaşıklığında olduğu için büyük verilerle kullanılmaz. Basitçe anlatacak olursak;
karmaşık dizisinde ilk olarak en küçük elemanı aramaya yönelik işlem gerçekleşir. En küçük eleman yani 1 bulunduktan sonra dizinin başındaki eleman 7 ile yer değiştirilir.
Yer değiştirmeden sonra işleme sıralanmayan kısımdan başlanır. Her seferinde en küçük eleman sıralı olanın sonuna eklenir.
Selection Sort'a ait örnek kod ise:
public int [] SelectionSortFonk(int list[]){
int enKucukIndex;
for (int i=0; i<list.length-1; i++){
enKucukIndex=i; //her seferinde sıralı olmayan kısımdan başlatmak için
for(int j=i; j<list.length; j++){
if(list[j] < list[enKucukIndex])
enKucukIndex=j;
}
int temp =list[enKucukIndex];
list[enKucukIndex]=list[i];
list[i]=temp;
}
return list[];
}