Pengurutan (sorting) adalah
proses mengatur sekumpulan obyek menurut urutan atau susunan tertentu. Urutan
tersebut dapat dari kecil ke besar (ascending) atau dari besar ke kecil
(descending).
Pengurutan berdasarkan jenisnya,
dibagi dua kategori, yaitu:
1. Pengurutan Internal, yaitu
pengurutan terhadap sekumpulan data yang disimpan di dalam memori utama
komputer.
2. Pengurutan Eksternal, yaitu
pengurutan data yang disimpan di dalam memori sekunder, biasanya data bervolume
besar sehingga tidak mampu dimuat semuanya dalam memori komputer, disebut juga
pengurutan arsip (file), karena struktur eksternal yang dipakai adalah
arsip.
Karena pengaksesan memori utama
lebih cepat dari pada memori skunder, maka pengurutan internal lebih cepat
daripada pengurutan eksternal.
Bermacam-macam metode yang
dipakai untuk melakukan pengurutan, antara lain:
- Bubble Sort
- Selection Sort (Maximum & Minimum Sort)
- Insertion Sort
- Heap Sort - Shell Sort
- Quick Sort
- Merge Sort
- Radix Sort
- Tree Sort.
Kali ini hanya akan dibahas
mengenai 2 buah metode sederhana yang mendasar, yaitu:
1. Selection Sort
Metode pengurutan ini membandingkan elemen yang sekarang
dengan elemen berikutnya sampai ke elemen yang terakhir. Jika ditemukan
elemen lain yang lebih kecil dari elemen
sekarang maka dicatat posisinya dan langsung ditukar.
Berikut ini langkah-langkah selection sort :
- Mencari data terkecil dari data pertama sampai dengan data yang terakhir. kemudian ditukar posisinya dengan data pertama.
- Mencari data terkecil dari data kedua sampai dengan data terakhir, kemudian ditukar posisinya dengan data kedua.
- Begitu seterusnya sampai semua data terurut naik. Apabila terdapat n buah data yang akan diurutkan, maka membutuhkan (n-1) langkah pengurutan, dengan data terakhir, yaitu data ke n tidak perlu diurutkan karena hanya tinggal data satu-satunya.
Contoh program Selection Sort
2. Insertion Sort
Metode ini bertujuan untuk
menjadikan bagian sisi kiri array
terurutkan sampai dengan seluruh array berhasil diurutkan. Metode ini
mengurutkan bilangan-bilangan yang telah dibaca dan berikutnya secara berulang
akan menyisipkan bilangan-bilangan dalam array yang belum terbaca ke sisi kiri
array yang telah terurut. Berikut ini contoh ilustrasinya.
Contoh program Insertion Sort
Contoh hasil build program diatas menggunakan Borland C++. Mungkin hanya sekian penjelasan tentang sorting (selection sort dan insertion sort) dari saya kurang lebihnya. Jika ada yang ingin ditanyakan dapat ditanyakan pada kolom komentar dibawah ini. Terimakasih telah berkunjung ke blog saya :v
Sumber :
KONSEP DAN APLIKASI PEMROGRAMAN MENGGUNAKAN BORLAND C++ BUILDER 6 M. Fachrurrozi
http://frediannotes.blogspot.com/2013/02/selection-sort.html
Algoritma & Pemrograman dengan C++ oleh Andri Kristanto
Tidak ada komentar:
Posting Komentar