Pengertian Algoritma
Pengertian Algoritma
Kata Algoritma atau Algoritme muncul dari ‘Algoritmi’, bentuk Latin
dari Al-Khwarizmi (Abu Abdullah Muhammad ibnu Musa Al-Khwarizmi), seorang
matematikawan, ahli astronomi, dan ahli geografi dari Persia.
Algoritma merupakan salah satu proses atau serangkaian aturan yang
harus diikuti dalam perhitungan atau operasi pemecahan masalah lainnya,
terutama oleh komputer.
Algoritma digunakan untuk melakukan penghitungan, penalaran
otomatis, serta mengolah data pada komputer dengan menggunakan software.
Dalam algoritma terdapat rangkaian terbatas dari beberapa intruksi
untuk menghitung suatu fungsi yang jika dieksekusi dan diproses akan
menghasilkan output, lalu berhenti pada kondisi akhir yang sudah ditentukan.
Pengertian Algoritma Menurut Para Ahli
1. KBBI (Kamus Besar Bahasa Indonesia)
Algoritma ialah
Prosedur sistematis untuk memecahkan masalah matematis dalam
langkah-langkah terbatas
Urutan logis pengambilan keputusan untuk pemecahan masalah
2. Donald E. Knuth
Algoritma yaitu sekumpulan aturan-aturan berhingga yang memberikan
sederetan operasi-operasi
untuk menyelesaikan suatu jenis masalah yang khusus.
3. Stone dan Knuth
Algoritma yakni suatu seperangkat aturan yang tepat mendefinisikan
urutan operasi hingga sedemikian rupa sehingga setiap aturan yang efektif,
jelas hingga sedemikian rupa sehingga urutan berakhir dalam waktu yang
terbatas.
4. Minsky
Algoritma adalah seperangkat arutan yang dapat membertahukan kepada
kita dari waktu ke waktu, tepatnya bagaimana untuk bertindak.
5. Seymour Lipschutz, Ph.D dan Marc Lipson, Ph.D.
Algoritma merupakan berbagai daftar langkah-demi-langkah yang
terhingga dari instruksi- instruksi yang terdefinisikan dengan jelas yang
dipakai untuk permasalahan tertentu.
Bentuk Dasar Algoritma
Algoritma Sekuensial (Sequence Algorithm)
Algoritma Perulangan (Looping Algorithm)
Algoritma Percabangan atau Bersyarat (Conditional Algorithm)
Tujuan dan Fungsi Algoritma
- Memecahkan program yang sulit
- Membuat program besar menjadi lebih sederhana
- Dapat digunakan berkali-kali untuk memecahkan suatu permasalahan,
- Memudahkan programmer untuk membuat program.
- Meminimalisir kesalahan
- Untuk membantu menyederhanakan suatu program yang rumit dan besar.
- Untuk memudahkan dalam membuat sebuah program untuk masalah tertentu.
- Algoritma dapat digunakan berkali-kali untuk menyelesaikan suatu permasalahan.
- Membantu memecahkan suatu permasalahan dengan logika dan sistematis.
- Untuk meminimalisir penulisan program secara berulang-ulang.
- Agar dapat melakukan pendekatan top-down dan divide and conquer.
- Untuk memudahkan membuat program yang lebih rapih dan terstruktur sehingga lebih mudah dipahami dan dikembangkan.
- Memudahkan proses modifikasi pada program karena bisa dilakukan hanya pada satu modul tanpa harus mengubah modiul lainnya.
- Ketika terjadi kesalahan, algoritma dapat membantu menemukannya karena alur kerja yang jelas.
- Memudahkan proses dokumentasi.
Kriteria Algoritma
1. Input
Suatu algoritma harus mempunyai 0 dan juga lebih masukan (input)
yang juga berarti suatu algoritma itu akan dimungkinkan tidak memiliki masukan
secara langsung dari pengguna tetapi dapat juga mewakili beberapa masukan.
Algoritma yang ini tidak memiliki masukan secara langsung dari
pengguna, maka dapat kita diinisalisasikan maupun juga dibangkitkan dalam
algoritma.
2. Output
Suatu algoritma harus memiliki satu atau lebih algoritma. Suatu
algoritma yang tidak memiliki keluaran adalah suatu algoritma yang sia-sia,
yang tidak akan perlu dilakukan.
Algoritma dibuat untuk tujuan menghasilkan sesuatu yang akan
diinginkan, yaitu berupa hasil keluaran.
3. Finiteness
Setiap pekerjaan yang telah dikerjakan pasti dapat berhenti.
Demikian halnya dengan algoritma harus dapat dijamin lalu kemudian berhenti
setelah melakukan sejumlah langkah proses.
4. Defiteness
Tidak dapat menimbulkan makna ganda (ambiguous). Setiap baris aksi
atau juga pernyataan dalam suatu algoritma harus pasti.
Artinya tidak dapat menimbulkan penafsiran lain yang bagi setiap
pembaca algoritma tersebut, sehingga dapat memberikan output yang sesuai dengan
apa yang kemudian diharapkan oleh pengguna tersebut.
5. Efectiviness
Langkah algoritma yang akan dikerjakan dalam suatu waktu yang
wajar. Suatu algoritma tidak akan terdapat suatu aksi yang tidak perlu dilakukan.
Setiap aksi akan membutuhkan waktu eksekusi, padahal aksi tersebut
jelas tidak akan berpengaruh atau juga tidak ada gunanya.
Klasifikasi Algoritma
1. Rekursi dan Iterasi
Algoritma rekursi ialah salah satu algoritma yang memanggil dirinya
sendiri secara berulang-ulang.
Sedangkan algoritma iterasi adalah algoritma yang memakai
konstrukti berulang dimana terkadang terdapat data tambahan pada struktur yang
dibuat.
2. Logical
Algoritma logical yaitu sebuah algoritma yang dapat memposisikan
diri seperti logika deduksi yang terkontrol.
3. Serial, Parallel, atau Terdistribusi
Algoritma serial yakni suatu algoritma yang menjalankan satu
instruksi saja. Algoritam parallel adalah algoritma yang dapat mengerjakan
suatu perintah dalam waktu yang sama.
Sedangkan algoritma terdistribusi adalah algoritma yang memakai
banyak mesin yang terkoneksi dengan jaringan.
4. Deterministik atau Non-deterministik
Algoritma deterministik adalah sejenis algoritma yang dapat
memecahkan suatu masalah dengan keputusan yang tepat.
Sedangkan algoritma Non-deterministik adalah algoritma yang
memecahkan suatu masalah dengan metode penerkaan.
5. Tepat atau Perkiraan
Suatu algoritma mungkin saja memiliki solusi yang tepat, atau
setidaknya mempunyai perkiraan yang mendekati solusi yang benar. Dalam
merumuskannya dapat dilakukan dengan strategi deterministic ataupun secara
acak.
6. Algoritma Quantum
Algoritma quantum merupakan berbagai jenis dari algoritma yang menggunakan
model realistik dari komputasi quantum.
Komentar
Posting Komentar