Rabu, 20 Mei 2009

Selection sort merupakan sebuah algoritma pengurutan yang secara berulang mencari item yang belum terurut dan mencari paling sedikit satu untuk dimasukkan ke dalam lokasi akhir.

Selection sort salah satu agoritma pengurutan yang mudah untuk dipelajari. Dibandingkan dengan bubble short, frekuensi pertukaran data pada selection short lebih sedikit.
Metode ini memiliki konsep memilih data yang maksimum/minimum dari suatu kumpulan data larik L, lalu menempatkan data tersebut ke elemen paling akhir atau paling awal sesuai pengurutan yang diinginkan. Data maksimum/minimum yang diperoleh, diasingkan ke tempat lain, dan tidak diikutsertakan pada proses pencarian data maksimum/minimum berikutnya. Ide utama dari selection short adalah memiliki elemen dengan nilai paling rendah dan menukar elemen yang terpilih dengan elemen ke-1. Nilai dari I dimulai dari 1 ke n, dimana n adalah jumlah total elemen dikurangi 1.

Prinsip kerja dari Teknik Section sort ini adalah:
1. Pengecekan dimulai dari data 1 sampai dengan data ke n
2. Tentukan bilangan dengan Index terkecil dari data bilangn tersebut
3. Tukar bilangan dengan index terkecil tersebut dengan bilangan pertama (I=1) dari data bilangan tersebut
4. Lakukan langkah 2 dan3 untuk bilangan berikutnya (I=I+1)sampai di dapatkan data yang optimal

Sintaks program fungsi Selection Sort
for ( i=0 ; i <= N-2 ; i++) { kecil = i; for ( k = i+1 ; k <= N-1 ; k++ ) { if (A[k] > A[j])
{
kecil = k;
}
}
temp = A[i];
A[i] = A[kecil];
A[kecil] = temp;
}



Contoh kasus:
Misalkan tabel A berisi elemen-elemen berikut:
61, 39, 32, 21, 2, 37
Langkah-langkah pengurutan dengan Selection Sort:
Contoh Ilustrasi: Urutkan data berikut 61, 39, 32, 21, 2, 37
Contoh program:
import java.io.*;
class ArrayBil{
private int[] arrBil = new int[5];
ArrayBil(){
}
ArrayBil(int[] arr){
this.arrBil = arr;
}
public void setArrBil(int[] arr){
this.arrBil = arr;
}
public int[] getArrBil(){
return(arrBil);
}
public void inputArray() {
BufferedReader jwb;
for (int i=0;i<5;i++) jwb =" new" i ="0;" n =" 5;" i ="">

0 komentar:

Posting Komentar