Sejarah Algoritma
Pemrograman sudah menjadi kegiatan yang sangat penting di era teknologi informasi saat ini. Program yang berjalan di berbagai device seperti komputer (personal computer), netbook, handheld, web (berbasis internet) pada dasarnya tidak dibangun begitu saja, melainkan ada suatu proses yang menjadi suatu pola kerja dari program itu sendiri yaitu algoritma.
Algoritma mempunyai sejarah yang panjang. Jika dilihat dari asal kata nya yaitu “algoritma”, kata ini tidak muncul dalam kamus Webster pada tahun 1957. Orang hanya menemukan kata Algorism yang berarti proses menghitung menggunakan angka Arab. Anda dikatakan Algorist jika anda menghitung menggunakan angka Arab. Menurut Rinaldi Munir (2011:10), Para ahli bahasa menemukan kata algorism berasal dari nama cendikiawan muslim yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarijmi (Al-Khuwarijmi dibaca oleh orang Barat menjadi algorism) dalam bukunya yang berjudul Kitab Aljabar Wal-muqabala, yang artinya “Buku Pemugaran dan Pengurangan” (The Book of Restoration and Reduction). Dari judul buku itu kita memperoleh kata “aljabar” (algebra). Perubahan dari kata algorism menjadi algorithm muncul karena kata algorism sering dikelirukan dengan arithmetic sehingga akhiran –sm berubah menjadi –thm. Pada tahun 1950 algoritma yang lebih condong ke arah aritmatika terbukti dengan dipakainya kata algoritma tersebut dalam “Algoritma Euclidean” yaitu algoritma yang mencari pembagi bersama terbesar (Great 12 Common Divisor) diantara kedua bilangan. Dalam algoritma ini sangat membantu dalam mencari nilai enciphering pada algoritma RSA.Kemudian dari hal tersebut, algoritma dikembangkan ke arah prosedur komputasi sehingga komputer dapat bekerja seperti yang diharapkan seperti saat ini.
Definisi Algoritma
Dalam matematika dan ilmu komputer, algoritma adalah prosedur atau langka demi langkah untuk penghitungan. Algoritma digunakan untukpenghitungan, pemrosesan data dan penalaran otomatis. Algoritma adalah metode efektif yang diekspresikan sebagai rangkaian terbatas dari instruksi-instruksi yang telah didefinisikan dengan baik untuk menghitung sebuah fungsi. Dimulai dari sebuah kondisi awal dan input awal (mungkin kosong), instruksi-instruksi tersebut menjelaskan sebuah komputasi yang, bila dieksekusi, diproses lewat sejumlah urutan kondisi terbatas yang terdefinisi dengan baik, yang pada akhirnya menghasilkan “keluaran” dan berhenti di kondisi akhir.
Definisi informalnya bisa berarti sekumpulan aturan yang secara tepat menentukan seurutan operasi yang mengikutkan semua program komputer, termasuk program yang tidak melakukan perhitungan numerik. Secara umum, sebuah program hanyalah sebuah algoritma jika ia akan berhenti nantinya. Berikut ini definisi algoritma menurut beberapa ahli :
- Menurut Thomas H. Cormen dalam Andi Nuhrogo (2011:10), “Algoritma adalah prosedur komputasi yang mengambil beberapa nilai atau kumpulan nilai sebagai input kemudian di proses sebagai output sehingga algoritma merupakan urutan langkah komputasi yang mengubah input menjadi output”
- Menurut Donald E. Knuth dalam Andi Nugroho (2011:10), “Algoritma dalam pengertian modern mempunyai kemiripan dengan istilah resep, proses, metode, teknik, prosedur, rutin. Algoritma adalah sekumpulan aturan-aturan berhingga yang memberikan sederetan operasi-operasi untuk menyelesaikan suatu jenis masalah yang khusus.”
Daftar Pustaka
- Munir, Rinaldi. 2011. Algoritma dan Pemrograman : Dalam Bahasa Pascal dan C. Bandung: Informatika
- Nugroho, Andi. 2011. Algoritma dan Struktur Data Menggunakan Bahasa Pemrograman C++. Yogyakarta: Penerbit Andi