Cara kerja metode ini didasarkan pada pencarian elemen
dengan nilai terkecil, kemudian dilakukan penukaran dengan elemen ke-I. Secara
singkat, metode ini bisa dijelaskan sebagai berikut. Pada langkah pertama,
dicari data yang terkecil dari data pertama sampai data terakhir. Kemudian data
tersebut kita tukar dengan data pertama. Dengan demikian, data pertama sekarang
mempunyai nilai paling kecil dibanding data lain. Pada langkah kedua, data
terkecil kita cari mulai dari data kedua sampai data terakhir. Data terkecil
yang kita peroleh kita tukar dengan data kedua. Demikian seterusnya sampai
suluruh data terurut.
Metode selection sort merupakan perbaikan dari
metode bubble sort dengan mengurangi jumlah perbandingan. Selection
sort merupakan metode pengurutan dengan mencari nilai data terkecil dimulai
dari data diposisi 0 hingga diposisi N-1. Jika terdapat N data dan data
terkoleksi dari urutan 0 sampai dengan N-1 maka algoritma pengurutan dengan
metode selection sort adalah sebagai berikut:
1. Cari data
terkecil dalam interval j = 0 sampai dengan j = N-1
2. Jika pada posisi
pos ditemukan data yang terkecil, tukarkan data diposisi pos dengan data
di posisi i jika k.
3. Ulangi langkah 1
dan 2 dengan j = j+i sampai dengan j = N-1, dan seterusnya sampai j = N - 1.
Bila diketahui data
awal berupa: 44 55 12 42 94 18 6 67, maka langkah per langkah pengurutan dengan
metode selection sort adalah sebagai berikut:
Nah, begitulah prosesnya. Selanjutnya
mari kita lanjutkan ke codingannya :
package tugas_alpro;
public class selectionsort {
public static void main(String[] args) {
int arr[]={44,55,12,42,94,18,06,67};
System.out.print("Angka sebelum
di sorting : ");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+", ");
}
System.out.println("");
int min=0; int temp;
for(int i=0;i<=arr.length-1;i++){
min=i;
for (int k=i+1;k<arr.length;k++){
if(arr[k]<arr[i]){
temp=arr[i];
arr[i]=arr[k];
arr[k]=temp;
}
}
}
System.out.print("Angka sesudah
di sorting : ");
for (int j=0;j<=arr.length-1;j++)
System.out.print(arr[j]+", ");
}
}
v
Result

Tidak ada komentar:
Posting Komentar