Pengertian Algoritma
Dalam konsep secara umum, algoritma artinya adalah urutan langkah yang sistematis dan logis dalam proses penyelesaian suatu masalah. Praktik penerapannya yang paling sering diketahui memang dalam bidang teknologi, terutama berkaitan dengan proses penyusunan perangkat lunak.
Algoritma dapat pula disebut sebagai sekelompok instruksi yang dirancang untuk menyelesaikan permasalahan atau tugas. Contoh sederhana dari pemanfaatan algoritma adalah resep makanan yang di dalamnya terdapat beberapa instruksi untuk mempersiapkan menu tertentu.
Terdapat 3 elemen dasar yang membentuk sebuah algoritma, yaitu:
- Algoritma sekuensial. Algoritma sekuensial adalah penyusunan instruksi secara berurutan dan sistematis untuk menghasilkan tindakan yang diinginkan. Contoh sederhana algoritma sekuensial adalah urutan instruksi yang perlu Anda lakukan ketika memasak.
- Algoritma bersyarat. Algoritma ini menggunakan pernyataan kondisional. Contohnya, Anda berjanji mengajak anak jalan-jalan ke alun-alun kalau cuaca cerah. Kalau hujan, rencana itu batal dan Anda memilih tidur.
- Algoritma iterasi. Algoritma ini sering pula disebut looping, digunakan untuk memberikan instruksi berulang sampai pada kondisi tertentu. Contoh algoritma looping adalah ketika Anda melakukan perhitungan 1 sampai 10.
Pengertian Algoritma Menurut Para Ahli
Selain pengertian tersebut, Anda bisa pula mengetahui apa yang dimaksud algoritma berdasarkan penjelasan dari parah ahli, di antaranya:
Pengertian dari Algoritma Menurut Muhammad ibn Musa Al Khawarizmi
Al Khawarizmi merupakan orang yang pertama kali mengemukakan istilah algoritma. Al Khawarizmi menjelaskan apa pengertian algoritma sebagai metode khusus untuk penyelesaian problem tertentu.
Pengertian Algoritma Menurut Marvin Minsky
Pakar artificial intelligence (AI) Marvin Minsky mengungkapkan kalau algoritma merupakan sekelompok aturan yang fungsinya melakukan pemberitahuan secara berkala tentang hal-hal yang harus dilaksanakan.
Arti dari Algoritma Menurut Thomas H. Cormen
Penulis buku Introduction to Algorithms ini menyebutkan bahwa algoritma merupakan salah satu bentuk prosedur komputasi. Dalam prosesnya, algoritma menggunakan sekumpulan nilai sebagai masukan yang kemudian diproses dan menghasilkan output (keluaran).
Ciri-Ciri Algoritma
Dikutip dari Tutorial Link, ada 6 ciri ciri algoritma yang perlu Anda ketahui, yaitu:
- Tidak ambigu, setiap instruksi dan langkah-langkah dalam algoritma harus jelas
- Harus punya input, minimal jumlahnya 0
- Terdapat output, jumlahnya minimal 1
- Tahapannya terbatas
- Dapat diterapkan dengan memanfaatkan sumber daya yang dimiliki
- Independen yang memungkinkannya bisa dipraktikkan dalam beragam jenis bahasa pemrograman
Fungsi serta Kegunaan Algoritma
Fungsi utama dari penggunaan algoritma tidak lain adalah mencari solusi atas sebuah permasalahan. Di samping itu, Anda juga bisa memperoleh fungsi dan manfaat algoritma lainnya seperti:
- Menyederhanakan program yang rumit dan berskala besar
- Memudahkan perancangan sebuah program
- Membantu dalam menyelesaikan permasalahan yang sifatnya repetitif
- Membantu penyusunan program secara lebih rapi dan terstruktur
- Memudahkan dalam proses pencarian kesalahan
- Memudahkan proses dokumentasi
Jenis-Jenis Algoritma
aat belajar tentang algoritma, Anda perlu mengetahui jenis-jenisnya. Ada cukup banyak jenis algoritma, di antaranya adalah:
Rekursif
Algoritma rekursi merupakan jenis algoritma looping yang dilakukan dengan memanggil dirinya sendiri.
Divide and Conquer
Dalam algoritma divide and conquer, proses penyelesaian masalah dilakukan dengan membaginya dalam bagian lebih kecil dan mencari solusinya.
Dynamic Programming
Algoritma dynamic programming berjalan dengan memanfaatkan hasil yang telah didapatkan di masa lalu untuk mencari solusi baru di waktu yang berbeda.
Greedy
Greedy merupakan algoritma yang mengedepankan pencarian solusi yang optimal. Penggunaannya dilakukan dengan tidak terlalu memperhatikan konsekuensi.
Algoritma Brute Force
Penerapan algoritma brute force adalah dengan memanfaatkan keseluruhan solusi dengan tujuan untuk menemukan jawaban atas sebuah permasalahan.
Sejarah Perkembangan Algoritma
Sejarah perkembangan algoritma berlangsung secara bertahap, yaitu:
- Bukti penerapan algoritma pertama dunia pada zaman Babilonia (1600-1800 SM)
- Penggunaan istilah algoritma pertama dunia oleh Muhammad ibn Musa Al-Khawarizmi (780 M)
- Munculnya aljabar boolean tahun 1847 yang menjadi dasar logika komputer, dikembangkan oleh George Boole
- Alan Turing berhasil menciptakan Turing Machine yang merupakan konsep mesin komputer modern (1930)
- Keberadaan Turing Machine pun mendorong para ilmuan dalam mengembangkannya dan terciptalah sebuah mesin komputer modern. Algoritma pun telah berevolusi, dari yang awalnya menggunakan operasi biner menjadi bahasa pemrograman yang lebih human friendly seperti C++, JavaScript, Java, Python, dan lain sebagainya.
Komponen Dalam Algoritma
Selanjutnya, Anda pula perlu mengenali komponen penting dalam algoritma. Menurut penjelasan dari computer scientist Amerika Serikat Donald Knuth, ada 5 komponen penting yang harus ada dalam sebuah algoritma, yaitu:
- Input. Ciri ciri algoritma yang pertama adalah adanya masukan atau input. Input tersebut berperan sebagai permasalahan yang akan dicari solusinya.
- Proses. Faktor selanjutnya yang bisa menjadi penilaian apa itu algoritma adalah adanya proses. Proses ini berisi tahapan yang perlu dijalani untuk mencapai tujuan yang diinginkan.
- Output. Kalau input berperan sebagai problem, maka output adalah solusinya.
- Instruksi jelas. Tanpa adanya instruksi yang jelas, proses tidak akan berjalan dengan lancar. Selanjutnya, hal tersebut akan menimbulkan kesalahan pada output.
- Tujuan akhir. Proses dalam sebuah algoritma akan berhenti ketika telah mencapai tujuan akhir.
- Algoritma dan Program, Apa Bedanya?