Anda di halaman 1dari 2

Algoritma

Dalam matematika dan ilmu komputer, algoritma adalah prosedur langkah-demi-langkah


untuk penghitungan. Algoritma digunakan untuk penghitungan, pemrosesan data, dan
penalaran otomatis.

Algoritma adalah metode efektif 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. Transisi dari satu kondisi ke kondisi selanjutnya tidak harus
deterministik; beberapa algoritma, dikenal dengan algoritma pengacakan, menggunakan
masukan acak.

Sejarah istilah “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. Masalah timbul pada saat akan menuangkan bagaimana
proses yang harus dilalui dalam suatu/sebuah sistem (program) bagi komputer sehingga pada
saat eksekusinya, komputer dapat bekerja seperti yang diharapkan. Programer komputer akan
lebih nyaman menuangkan prosedur komputasinya atau urutan langkah proses dengan
terlebih dahulu membuat gambaran (diagram alur) diatas kertas.

Jenis-jenis Algoritma

1.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 memecahkanpermasalahan-
permasalahan kecil yang terbentuk.
2.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.
3.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.
4.Sistem Flowchart
Sistem flowchart merupakan diagram alir yang menggambarkan suatu sistem peralatan
komputer yang digunakan dalam proses pengolahan data serta hubungan antar peralatan
tersebut. Sistem flow chart tidak digunakan untuk menggambarkan urutan langkah untuk
memecahkan masalah , tetapi hanya untuk menggambarkan prosedur dalam sistem yang
dibentuk.
5.Pseudo Code (Kode Semu)
Pseudo Code (kode semu) merupakan metode yang cukup efisien untuk menggambarkan
suatu algoritma . Pseudo Code dituliskan dengan menggunakan bahasa yang mudah dipahami
(boleh menggunakan bahasa Indonesia) agar alur logika yang digambarkan dapat dimengeti
oleh orang awam sekalipun. Flowchart Pseudo Code (kode semu) disusun dengan tujuan
untuk menggambarkan tahap-tahap penyelesaian suatu masalah dengan kata-kata (teks).
Metode ini mempunyai kelemahan, dimana penyusunan algoritma dengan kode semu sangat
dipengaruhi oleh tata bahasa pembuatnya, sehingga kadang-kdang sulit dipahami oleh orang
lain. Oleh karena itu kemudian dikembangkan suatu metode lain yang dapat menggambarkan
suatu algoritma program secara lebih mudah dan sederhana yaitu dengan menggunakan
flowchart (diagram alir).

Anda mungkin juga menyukai