7
2.2 Algoritma Pengurutan Sorting
Algoritma merupakan urutan aksi-aksi yang dinyatakan dengan jelas dan tidak rancu untuk memecahkan suatu masalah dalam rentang waktu tertentu. Sedangkan
pengurutan adalah proses pengaturan sekumpulan objek berdasarkan urutan atau susunan tertentu, dapat berupa pengurutan menaik ascending atau menurun
descending.
Contoh, sebuah larik atau array terdiri dari kumpulan bilangan : [3,12,1,50,33,5,28] Hasil pengurutan menaik ascending : [1,3,5,12,28,33,50]
Hasil pengurutan menurun descending : [50,33,28,12,5,3,1]
Sebuah algoritma dikatakan baik jika menghasilkan nilai yang benar, efektif dan efisien. Efektif yaitu tepat sasaran, jelas dan tidak rancu dalam menjalankan aksi-
aksinya serta menghasilkan data yang benar. Efisien yaitu penghematan proses dari sebuah algoritma, seperti running time dan penggunaan memori. Metode atau
algoritma pengurutan dapat diklasifikasikan menjadi : 1.
Metode atau algoritma pengurutan internal, yaitu pengurutan yang dilakukan di dalam larik itu sendiri. Datanya disimpan di dalam memori komputer.
2. Metode atau algoritma pengurutan eksternal, yaitu pengurutan yang datanya
disimpan di dalam disk storage. Metode ini disebut juga pengurutan arsip. Sedangkan berdasarkan kestabilan stability, algoritma pengurutan dapat dibagi
menjadi dua jenis, yaitu : 1.
Metode pengurutan stabil stable sorting algorithm, merupakan algoritma pengurutan yang menjagamempertahankan maintenance urutan dari
beberapa elemen array yang bernilai sama. 2.
Metode pengurutan tidak stabil non stable sorting algorithm, merupakan metode pengurutan yang tidak menjagamempertahankan maintenance urutan
dari beberapa elemen array yang bernilai sama. Dengan kata lain, urutan beberapa elemen yang sama berbeda antara sebelum dan sesudah pengurutan.
Algoritma memiliki dua skema, yaitu iteratif dan rekursif. Iteratif yaitu algoritma yang melakukan perulangan biasa, sedangkan rekursif adalah algoritma yang
Universitas Sumatera Utara
8
melakukan perulangan dengan melakukan pemanggilan terhadap dirinya sendiri. Contoh algoritma pengurutan yang termasuk dalam skema iteratif, yaitu pengurutan
apung bubble sort dan selection sort, Contoh algoritma pengurutan yang termasuk dalam skema rekursif, yaitu pengurutan merge merge sort, pengurutan heap heap
sort dan pengurutan cepat quick sort. Tidak semua algoritma tersebut hanya memiliki satu skema, misalnya algoritma pengurutan seleksi atau selection sort yang
dapat menggunakan skema rekursif, namun di dalam penelitian ini selection sort yang dibahas menggunakan skema iteratif Fanani 2008.
2.3 Kompleksitas Algoritma