Keyword: Analisa, Algoritma, Contoh Program di Java, Perbandingan, Pseudocode
ANALISA
Selection Sort melakukan pengurutan dengan membaca seluruh data dari
awal sampai akhir sambil mencari data terkecil. Setelah ditemukan data terkecil
dari seluruh data, data terkecil tersebut ditukar dengan indeks terkecil.
Kemudian, dicari data yang terkecil ke-2, dan ditukarkan dengan indeks terkecil
berikutnya (ke-2). Looping
(perulangan) akan berakhir ketika sudah tidak ada yang bisa ditukarkan. Seluruh
data sudah berada di posisinya.
ALGORITMA
1) Terdapat
sebuah array data a[0] sampai a[n-1]
2) Melakukan
perulangan (dengan variable j) dari j = 0 sampai j < (n-1)
Lakukan langkah 3 – 6.
for (int j = 0;
j < (n-1); j++) {
3) Menjadikan
j sebagai nilai min.
4) Melakukan
perulangan (dengan variable i) dari i = j+1 sampai i < n
Lakukan langkah 5.
int min = j;
for (int i = j+1; i < n; i++) {
5) Membandingkan
nilai a[i] dengan a[min].
Kalau
a[i] < a[min], jadikan min = i
if (a[i] < a[min])
{min = i; }
6) Melakukan
proses swap (tukar) untuk a[j] dengan a[min].
int
temp = array[y];
array[y]
= array[min];
array[min] = temp;
7) SELESAI.
CONTOH PROGRAM DI JAVA
public static void selection_sort(int array[]) {
for (int y = 0; y < array.length;
y++) {
int min = y;
for (int x = y; x <
array.length; x++) {
if (array[x] < array[min])
{min = x; }
}
int temp = array[y];
array[y] = array[min];
array[min] = temp;
}
}
PERBANDINGAN ALGORITMA
Untuk kasus-kasus sederhana dengan jumlah data sedikit, Selection
Sort dapat diunggulkan bila dibandingkan dengan Bubble Sort atau Gnome Sort.
Algoritma pengurutan ini sangat mirip bila dibandingkan dengan Insertion Sort. Perbedaannya, Insertion Sort hanya akan mendeteksi elemen-elemen
yang diperlukan; sedangkan Selection Sort
akan mendeteksi semua elemen dari awal sampai akhir kemudian baru diurutkan. Untuk
jumlah data sedikit, perbandingan kecepatan pengurutan Insertion Sort dan Selection
Sort bisa sekitar 1 : 2. Jadi, untuk kebanyakan kasus, Insertion Sort lebih cepat setengah perbandingan. Untuk data-data
yang banyak, Selection Sort dapat
diandalkan dengan algoritmanya ‘divide and conquer’ seperti pada Merge Sort.
ANIMASI |
3 komentar:
Thank you this blog is fantastic, thank you for sharing. Australia.
Denny blogspot mengucapkan,,marhaban ya ramadhan, senyum sapa dari saya untuk sobat blogger di bulan yang suci dan penuh berkah ini...visit balik ya sob...
terima kasih atas tutorial nya gan...
Posting Komentar
Silahkan memberikan komentar di sini. Terima kasih.