Lanjut bahas sorting selanjutnya, sekarang gw bakalan bahas tentang 
selection sort. Selection Sort merupakan kombinasi antara sorting dan 
searching. Untuk setiap proses, akan dicari elemen-elemen yang belum 
diurutkan yang memiliki nilai terkecil atau terbesar akan dipertukarkan 
ke posisi yang tepat di dalam array. Misalnya untuk putaran pertama, 
akan dicari data dengan nilai terkecil dan data ini akan ditempatkan di 
indeks terkecil (data[0]), pada putaran kedua akan dicari data kedua 
terkecil, dan akan ditempatkan di indeks kedua (data[1]). Selama proses,
 pembandingan dan pengubahan hanya dilakukan pada indeks pembanding 
saja, pertukaran data secara fisik terjadi pada akhir proses.
gambar proses pengurutan dengan Selection Sort



 Prosedur selection Sort
Prosedur selection Sortvoid selection_sort (int data[])
{
 for(int i=0;i<n-1;i++)
    {
      pos=i;
      for(int j=i+1;j<n;j++)
       {
         if (data[j]<data[pos] pos=j; //ascending
         }
         if(pos!=i) tukar(&data[pos],&data[i]);
      }
}
Tidak ada komentar:
Posting Komentar