Apakah Itu Algoritma
Ditinjau dari asal-usul
katanya, kata Algoritma sendiri mempunyai sejarah yang aneh. Orang hanya
menemukan kata algorism yang berarti proses menghitung dengan angka
arab. Anda dikatakan algorist jika Anda menghitung menggunakan angka
arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang
memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut
yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far
Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat
menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab
Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The
book of restoration and reduction). Dari judul buku itu kita juga
memperoleh akar kata “Aljabar” (Algebra). Perubahan kata dari algorism menjadi algorithm muncul
karena kata algorism sering dikelirukan dengan arithmetic,
sehingga akhiran –sm berubah menjadi –thm. Karena
perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun
kata algorithm berangsur-angsur dipakai sebagai metode perhitungan
(komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam bahasa
Indonesia, kata algorithm diserap menjadi algoritma.
Definisi
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. Dalam beberapa konteks, algoritma
adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu.
Pertimbangan dalam pemilihan algoritma adalah, pertama, algoritma haruslah
benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari
sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma,
kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah
algoritma yang baik.
Pertimbangan kedua yang
harus diperhatikan adalah kita harus mengetahui seberapa baik hasil yang
dicapai oleh algoritma tersebut. Hal ini penting terutama pada algoritma untuk
menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang hanya
berupa pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat
mungkin dengan nilai yang sebenarnya.
Ketiga adalah efisiensi
algoritma. Efisiensi algoritma dapat ditinjau dari 2 hal yaitu efisiensi waktu
dan memori. Meskipun algoritma memberikan keluaran yang benar (paling
mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan
keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang
menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar
memori yang terpakai maka semakin buruklah algoritma tersebut. Dalam kenyataannya,
setiap orang bisa membuat algoritma yang berbeda untuk menyelesaikan suatu
permasalahan, walaupun terjadi perbedaan dalam menyusun algoritma, tentunya
kita mengharapkan keluaran yang sama. Jika terjadi demikian, carilah algoritma
yang paling efisien dan cepat.
Tidak ada komentar:
Posting Komentar