Latar Belakang KESIMPULAN DAN SARAN

BAB I PENDAHULUAN

1.1. Latar Belakang

Teknologi informasi sudah berkembang sangat pesat pada masa ini. Pencarian informasi yang berjumlah besar dalam waktu yang singkat sangat dibutuhkan sebagai upaya efisiensi waktu. Pencarian sebuah dokumen akan lebih efektif apabila informasi-informasi mengenai dokumen yang dicari tersebut diurutkan terlebih dahulu, dibandingkan pencarian dokumen tanpa pengurutan. Sehingga proses pengurutan data sorting merupakan salah satu bagian penting dalam proses pencarian informasi. Pengurutan data telah menjadi bidang penelitian yang sangat besar bagi para peneliti algoritma, banyak sumber daya yang diinvestasikan untuk membuat algoritma pengurutan data bekerja lebih baik. Untuk tujuan ini banyak algoritma pengurutan yang diamati dalam hal efisiensi kompleksitas algoritma Friend, 1956. Algoritma pengurutan data yang efisien sangat penting untuk mengoptimalkan penggunaan algoritma lain yang memerlukan daftar data yang sudah diurutkan untuk dapat bekerja dengan benar Deitel Deitel, 2001. Sejak awal digunakannya teknologi komputer, masalah pengurutan data telah menarik minat banyak peneliti, untuk menciptakan algoritma yang memiliki kompleksitas waktu penyelesaian paling efisien Kruse Ryba, 1999. Menurut Cormen et al 2001, pengurutan data telah dianggap sebagai masalah mendasar dalam bidang ilmu algoritma, dikarenakan alasan-alasan berikut : a Kebutuhan untuk pengurutan informasi yang terdapat dalam banyak aplikasi. b Algoritma lain banyak menggunakan pengurutan data sebagai subrutin kunci. c Dalam mendesain algoritma banyak teknik penting direpresentasikan dalam tubuh algoritma pengurutan. Universita Sumatera Utara d Banyak isu rekayasa yang timbul ketika menerapkan algoritma pengurutan. Banyak algoritma yang sangat terkenal untuk pengurutan data, dan salah satu dari algoritma yang terkenal tersebut yang menjadikan proses pengurutan data menjadi lebih ekonomis dan efisien adalah algoritma Quicksort yang ditemukan Hoare R pada tahun 1962. Algoritma Quicksort menggunakan teknik pendekatan divide-and- conquer, pada algoritma yang menggunakan teknik divide-and-conquer, suatu masalah dibagi menjadi beberapa masalah kecil, kemudian memecahkan masalah- masalah kecil tersebut secara rekursi conquer, dan kemudian mengumpulkan semua solusi untuk mendapatkan solusi utama untuk input awal combine. Prinsip desain algoritma yang menggunakan teknik divide-and-conquer adalah bahwa lebih mudah untuk memecahkan beberapa kasus masalah kecil daripada satu masalah besar Dean, 2006. Kemudian pada tahun 2010, Rami Mansi menggagas algoritma SMS Scan, Move and Sort, yang merupakan pengembangan dari algoritma Quicksort Mansi, 2010. Algoritma SMS meningkatkan algoritma Quicksort dalam membagi array masukan. Quicksort menggerakkan pivot untuk berada di tempat yang benar dan kemudian membagi array menjadi dua bagian, dan secara rekursif membuat prosedur yang sama untuk kedua bagian array tersebut, hingga mencapai hasil pengurutan yang benar. Algoritma SMS membagi array menjadi tiga bagian array, yakni array yang menampung nilai positif, menampung nilai negatif, dan menampung nilai yang sering muncul, lalu kemudian memindahkan setiap elemen ke tempat yang benar sesuai urutan. Dalam kasus terbaik, algoritma quicksort membutuhkan kompleksitas waktu On log n, sementara algoritma SMS membutuhkan kompleksitas waktu On. Dalam kasus rata-rata, algoritma quicksort membutuhkan kompleksitas waktu On log n, algoritma SMS membutuhkan kompleksitas waktu On + f nilai maksimum + |nilai minimum|, di mana f adalah jumlah elemen yang sering muncul. Peningkatan pada kasus rata-rata terjadi ketika n adalah jauh lebih besar dari pada nilai maksimum dan |nilai minimum|, di mana kompleksitas waktu mendekati On. Ketika berurusan dengan berbagai elemen yang berbeda, algoritma SMS lebih efisien dari pada algoritma quicksort. Dalam kasus terburuk, algoritma Quicksort membutuhkan kompleksitas waktu On 2 , sedangkan algoritma SMS membutuhkan kompleksitas waktu On + f nilai maksimum + |nilai minimum| Mansi, 2010. Pada penelitian Universita Sumatera Utara ini, Penulis akan membangun suatu algoritma baru yang merupakan pengembangan dari algoritma SMS.

1.2. Penelitian Sebelumnya