Pengertian Algoritma Algoritma Pengurutan Sorting

BAB 2 TINJAUAN PUSTAKA

2.1. Pengertian Algoritma

Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Kata Logis merupakan kata kunci dalam Algoritma. Langkah-langkah dalam Algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar Rosa dan Shalahuddin 2010. Kriteria Algoritma yang baik : a. Tepat, benar, sederhana, standar dan efektif. b. Logis, terstruktur dan sistematis. c. Semua operasi terdefinisi. d. Semua proses harus berakhir setelah sejumlah langkah dilakukan. e. Ditulis dengan bahasa yang standar dengan format pemrograman agar mudah untuk diimplementasikan dan tidak menimbulkan arti ganda. Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer yang diacu dalam terminologi algoritma. Namun, jangan beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari pun banyak terdapat proses yang dinyatakan dalam suatu algoritma. Cara-cara membuat kue atau masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan langkah-lankah membuat masakan. Bila langkah -langkahnya tidak logis, tidak dapat dihasilkan masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep masakan akan membaca satu per satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca. Secara umum, pihak benda yang mengerjakan proses disebut pemroses processor. Pemroses tersebut dapat berupa manusia, komputer, robot atau alat-alat elektronik lainnya. Pemroses melakukan suatu proses dengan melaksanakan atau mengeksekusi algoritma yang menjabarkan proses tersebutMunir 2007. Universitas Sumatera Utara

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. Sharma at all 2008. 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. Universitas Sumatera Utara Algoritma memiliki dua skema, yaitu iteratif dan rekursif. Iteratif yaitu algoritma yang melakukan perulangan biasa, sedangkan rekursif adalah algoritma yang 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