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.
“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.







0 komentar:
Posting Komentar