Algoritma Selection Sort

This entry is part 2 of 5 in the series Sort

Algoritma selection sort, sesuai dengan namanya (select = pilih), merupakan teknik pengurutan yang dilakukan dengan memilih nilai terbesar/terkecil dari sekumpulan nilai kemudian meletakkannya pada posisi ujung kumpulan nilai tersebut.

Detail Mekanisme Pengurutan

Secara lebih detail, selection sort dapat dijelaskan sebagai berikut:

  1. List berisi elemen yang akan diurutkan, dibagi dalam dua bagian, bagian yang sudah terurut, dan bagian yang belum terurut. Pada awal algoritma, bagian yang terurut berisi 0 elemen, atau dengan kata lain batas antara dua bagian ada pada ujung list.
  2. Dari bagian berisi list yang belum terurut, algoritma kemudian mencari nilai terbesar/terkecil (sesuai arah pengurutan) dengan membandingkan seluruh nilai. Setelah nilai tersebut ditemukan, ia diletakkan pada ujung list yang belum terurut (bertukar tempat dengan elemen pada ujung list). Peletakan ini sekaligus menandai posisi elemen tersebut sebagai batas baru antara bagian yang belum dan sudah terurut.
  3. Operasi ini dilakukan berulang-ulang (n-1 kali) hingga seluruh elemen menjadi terurut.

Ilustrasi

Animasi di bawah menunjukkan mekanisme kerja selection sort pada sebuah list. Warna kuning adalah bagian list yang sudah terurut, putih adalah bagian yang belum terurut. Warna biru menunjukkan posisi elemen yang sedang diperiksa, sedangkah warna merah menunjukkan nilai terkecil sementara pada list yang berlum terurut.

Ilustrasi selection sort dari wikipedia

Source Code

Berikut adalah contoh kode untuk algoritma selection sort dalam bahasa pemrograman python.

Semoga bermanfaat,

Salam

Series Navigation<< Algoritma Bubble SortAlgoritma Insertion Sort >>

You may also like...

Berikan komentar