Pengurutan
atau “Sorting“ adalah suatu proses menyusun kembali data yang sebelumnya telah
disusun dengan suatu pola tertentu, sehingga tersusun secara teratur menurut
aturan tertentu ( untuk data yang bertipe numerik atau karakter).
Dua Macam
Pengurutan
Ø Ascending
(urut naik) merupakan pengurutan dari angka yang nilainya lebih kecil kemudian
menuju ke nilainya yang lebih besar.
Ø Descending
(urut turun) adalah sebaliknya, yaitu pengurutan dari nilainya yang lebih besar
kemudian menuju ke nilainya yang lebih kecil.
Sebagai
contoh misalkan diberikan data berupa bilangan berikut ini:
3 9 1 4 0 2
Hasil sorting:
3 9 1 4 0 2
Hasil sorting:
Ø Ascending adalah 0 1
2 3 4 9
Ø Descending
adalah 9 4 3
2 1 0.
Macam-Macam Sorting
1. Bubble
Sort
Memindahkan element sekarang dengan elemen berikutnya , jika elemen
sekarang itu lebih besar / lebih kecil dari elemen berikutnya maka di tukar
(berpindah posisi).
Proses Bubble Sort
1.
Ascending
v Data
yang paling awal dibandingkan dengan data berikutnya jika ternyata lebih besar
maka tukar.
v Data
yang paling akhir dibandingkan dengan data sebelumya jika ternyata lebih kecil
maka tukar.
v Data
yang paling awal dibandingkan dengan data berikutnya jika ternyata lebih kecil
maka tukar.
v Data
yang paling akhir dibandingkan dengan data sebelumya jika ternyata lebih besar
maka tukar.
Ascending (Urutan Naik)
2. Exchange Sort
Exchange sort itu sangat mirip dengan buble sort. Bahkan banyak yang
mengatakan bahwa exchange sort sama dengan buble sort. Bedanya jika bubble sort
proses pertukarannya harus sistematis, dari awal atau dari belakang. Sedangkan
exchange sort proses pertukaran hanya akan dilakukan jika diperlukan saja.
Proses Exchange Sort
1.
Ascending
v
Jika terdapat elemen sebelumnya lebih besar dari
elemen berikutnya maka tukar.
v
Jika terdapat elemen sesudahnya lebih kecil dari
elemen sebelumnya maka tukar.
2.
Descending
v Jika
terdapat elemen sebelumnya lebih kecil dari elemen berikutnya maka tukar.
v Jika
terdapat elemen sesudahnya lebih besar dari elemen sebelumnya maka tukar.
Contoh Exchange Sort
3. Selection
Sort
Memindahkan elemen dengan cara membandingkan elemen sekarang dengan
elemen yang berikutnya sampai dengan elemen terakhir . Jika ditemukan elemen
lain yang lebih kecil / lebih besar dari elemen sekarang maka dicatat posisinya
dan kemudian ditukar dan begitu seterusnya.
Proses Selection Sort
1.
Ascending
v Elemen
yang paling besar diletakkan di akhir.
v Elemen
yang paling kecil diletakkan di awal.
2.
Descending
v Elemen
yang paling kecil diletakkan di akhir.
v Elemen
yang paling besar diletakkan di awal.
Contoh Selection Sort
Ascending
(Urutan Naik)
4. Insertion
Sort
Pengurutan yang dilakukan dengan cara membandingkan dengan data ke-2
sampai data terakhir. Jika ditemukan data yang lebih kecil atau lebih besar
maka data tersebut disisipkan kedepan sesuai posisi yang seharusnya.
Contoh Insertion Sort
Ascending
(Urutan Naik)
5. Shell
Sort
Merupakan proses pengurutan data yang sebelumnya acak menjadi data yang
terurut dengan cara menentukan jarak antar elemen yang akan dibandingkan.
Contoh Shell Sort
Ascending
(Urutan Naik)
6. Merge
Sort
Merupakan proses pengurutan data yang menggunakan merging dua buah
vector. Pada proses merge sort, data dibuat sepasang-sepasang, yang terdiri
dari dua elemen. Jika N ganjil, maka ada satu vector yang terdiri dari 1
elemen. Lalu kemudian data tersebut di merging sampai terurut.
Contoh Merge Sort
Ascending
(Urutan Naik)
7. Quick
Sort
Merupakan proses penyusunan elemen yang membandingkan suatu elemen
(pivot) denan elemen yang lain, dan menyusunnya sedemikian rupa sehingga elemen
–elemen lain yang lebih kecil dari pivot terletak disebelah kiri pivot. Dan
elemen yang lebih besar dari pivot terletak disebelah kanan pivot.
Dengan demikian akan terbentuk dua sublist, yang terletak disebelah
kanan dan kiri pivot. Lalu pada sublist kiri dan kanan itu kita anggap sebuah
list baru, dan kita kerjakan proses yang sama seperti yang sebelumnya. Demikian
seterusnya sampai tidak terdapat sublist lagi.
Contoh Quick Sort
Ascending
(Urutan Naik)
December 11, 2016 at 10:58 PM
December 12, 2016 at 4:17 AM
Contoh shell sortnya kok engga ada yah?
October 16, 2018 at 8:13 PM
Kuntul
February 17, 2019 at 9:05 PM
Thanks bang
November 26, 2019 at 6:04 AM
Tambhkan contoh kode dari bhasa pemograkannya lgi