Selection Sort
Algoritma Jenis seleksi
Selection Sort merupakan salah satu algoritma
pengurutan yang sederhana. Ide dasarnya adalah melakukan beberapa kali pass
untuk melakukan penyeleksian elemen struktur data. Untuk sorting ascending
(menaik), elemen yang paling kecil di antara elemen-elemen yang belum urut,
disimpan indeksnya, kemudian dilakukan pertukaran nilai elemen dengan indeks
yang disimpan tersebut dengan elemen yang paling depan yang belum urut.
Sebaliknya, untuk sorting descending (menurun), elemen yang paling besar yang
disimpan indeksnya kemudian ditukar.
Selection Sort
diakui karena kesederhanaan algoritmanya dan performanya lebih bagus daripada
algoritma lain yang lebih rumit dalam situasi tertentu. Algoritma ini bekerja
sebagai berikut:
- Mencari
nilai minimum (jika ascending) atau maksimum (jika descending) dalam
sebuah list
- Menukarkan
nilai ini dengan elemen pertama list
- Mengulangi
langkah di atas untuk sisa list dengan dimulai pada posisi kedua
Secara efisien
kita membagi list menjadi dua bagian yaitu bagian yang sudah diurutkan, yang
didapat dengan membangun dari kiri ke kanan dan dilakukan pada saat awal, dan
bagian list yang elemennya akan diurutkan.
contoh simulasi
algoritma selection sort sbb :
jika kita memiliki elemen array sbb : {5, 1, 12, -5, 16, 2, 12, 14}
jika kita memiliki elemen array sbb : {5, 1, 12, -5, 16, 2, 12, 14}
Algoritma di
dalam Selection Sort terdiri dari kalang bersarang. Dimana kalang tingkat
pertama (disebut pass)
berlangsung N-1
kali. Di dalam kalang kedua, dicari elemen dengan nilai terkecil. Jika didapat,
indeks yang didapat ditimpakan ke variabel min. Lalu dilakukan proses penukaran.
Begitu seterusnya untuk setiap Pass. Pass sendiri makin berkurang hingga
nilainya menjadi semakin kecil. Berdasarkan operasi perbandingan elemennya.

dengan begini saya mengerti selection
BalasHapusMantap
BalasHapus