Sejarah dan Penemu Algoritma
Kata algoritma berasal dari latinisasi nama seorang ahli matematika dari Uzbekistan Al Khawārizmi
(hidup sekitar abad ke-9), sebagaimana tercantum pada terjemahan
karyanya dalam bahasa latin dari abad ke-12 "Algorithmi de numero
Indorum". Pada awalnya kata algorisma
adalah istilah yang merujuk kepada aturan-aturan aritmetis untuk
menyelesaikan persoalan dengan menggunakan bilangan numerik arab
(sebenarnya dari India, seperti tertulis pada judul di atas). Pada abad
ke-18, istilah ini berkembang menjadi algoritma, yang mencakup semua prosedur atau urutan langkah yang jelas dan diperlukan untuk menyelesaikan suatu permasalahan.
Macam - Macam Algoritma :
Terdapat beragam klasifikasi algoritma
dan setiap klasifikasi mempunyai alasan tersendiri. Salah satu cara
untuk melakukan klasifikasi jenis-jenis algoritma adalah dengan
memperhatikan paradigma dan metode yang digunakan untuk mendesain
algoritma tersebut. Beberapa paradigma yang digunakan dalam menyusun
suatu algoritma akan dipaparkan dibagian ini. Masing-masing paradigma
dapat digunakan dalam banyak algoritma yang berbeda.
- Divide and Conquer, paradigma untuk membagi suatu permasalahan besar menjadi permasalahan-permasalahan yang lebih kecil. Pembagian masalah ini dilakukan terus menerus sampai ditemukan bagian masalah kecil yang mudah untuk dipecahkan. Singkatnya menyelesaikan keseluruhan masalah dengan membagi masalah besar dan kemudian memecahkan permasalahan-permasalahan kecil yang terbentuk.
- Dynamic programming, paradigma pemrograman dinamik akan sesuai jika digunakan pada suatu masalah yang mengandung sub-struktur yang optimal (, dan mengandung beberapa bagian permasalahan yang tumpang tindih . Paradigma ini sekilas terlihat mirip dengan paradigma Divide and Conquer, sama-sama mencoba untuk membagi permasalahan menjadi sub permasalahan yang lebih kecil, tapi secara intrinsik ada perbedaan dari karakter permasalahan yang dihadapi.
- Metode serakah. Sebuah algoritma serakah mirip dengan sebuah Pemrograman dinamik, bedanya jawaban dari submasalah tidak perlu diketahui dalam setiap tahap; dan menggunakan pilihan "serakah" apa yang dilihat terbaik pada saat itu.
0 komentar: