selection sort
Selection Sort
Mari kita kembali menelusuri bagaimana algoritma ini berfungsi kita asumsikan
terhadap satu paketkartu. Asumsikan bahwa kartu tersebut
akan diurutkan secara ascending. Pada
awalnya, kartu tersebut akan disusun secara linier pada sebuah meja dari kiri ke
kanan, dan dari atas ke bawah. Pilih nilai kartu yang paling rendah, kemudian
tukarkan posisi kartu ini dengan kartu yang terletak pada pojok kiri atas meja. Lalu
cari kartu dengan nilai paling rendah diantara sisa kartu yang tersedia. Tukarkan
kartu yang baru saja terpilih dengan kartu pada posisi kedua. Ulangi langkah –
langkah tersebut hingga posisi kedua sebelum posisi terakhir dibandingkan dan
dapat digeser dengan kartu yang bernilai lebih rendah.
Ide utama dari algoritma selection sort adalah memilih elemen dengan nilai paling
rendah dan menukar elemen yang terpilih dengan elemen ke-i. Nilai dari i dimulai
dari 1 ke n, dimana n adalah jumlah total elemen dikurangi 1.
Algoritma
void selectionSort(Object array[], int startIdx, int endIdx) {
int min;
for (int i = startIdx; i < min =" i;" j =" i">0) {
min = j;
}
}
swap(array[min], array[i]);
}
}
Sebuah Contoh
Data-----------1 pass----------2 pass--------3 pass---------4 pass
Maricar--------Hannah--------Hannah-------Hannah-------Hannah
Vanessa--------Vanessa-------Margaux------Margaux------Margaux
Margaux-------Margaux------Vanessa-------Maricar-------Maricar
Hanna---------Maricar--------Maricar-------Vanessa-------Rowena
Rowena--------Rowena-------Rowena-------Rowena--------Vanessa
Langganan:
Posting Komentar (Atom)
0 komentar:
Posting Komentar