Penjelasan Mudah Algoritma
Algoritma adalah serangkaian langkah atau instruksi yang dirancang untuk menyelesaikan suatu masalah. Bisa diibaratkan seperti petunjuk yang harus diikuti secara berurutan untuk mencapai tujuan. Misalnya, jika ingin membuat teh, langkah-langkah yang harus dilakukan adalah:
- Didihkan air.
- Masukkan teh ke dalam gelas.
- Tuang air panas ke dalam gelas.
- Tambahkan gula sesuai selera.
- Aduk hingga tercampur rata.
Ini adalah contoh sederhana dari algoritma di kehidupan sehari-hari.
Menurut Thomas H. Cormen, salah satu penulis buku "Introduction to Algorithms", algoritma adalah prosedur komputasi yang didefinisikan secara jelas untuk menyelesaikan masalah atau mencapai tujuan tertentu. Algoritma terdiri dari serangkaian langkah-langkah atau instruksi yang ditujukan untuk memproses input dan menghasilkan output.
Struktur Algoritma
Struktur algoritma mengacu pada cara menyusun dan mengorganisasikan langkah-langkah dalam suatu algoritma agar dapat dengan jelas menyelesaikan masalah. Biasanya, algoritma mengikuti beberapa struktur dasar yang dapat dijelaskan sebagai berikut:
1. Input
Algoritma biasanya dimulai dengan menerima input. Input ini adalah data atau nilai yang dibutuhkan untuk menjalankan langkah-langkah di dalam algoritma.
Contoh:
- Dalam algoritma menghitung rata-rata, inputnya adalah serangkaian angka.
2. Langkah-langkah (Instruksi)
Ini adalah serangkaian instruksi atau prosedur yang harus dijalankan untuk memproses input dan menghasilkan output. Langkah-langkah ini harus diuraikan dengan jelas, tidak ambigu, dan diurutkan secara logis.
Jenis langkah-langkah dapat berupa:
- Instruksi Sederhana: Melakukan satu tugas tertentu.
- Pengulangan (Looping): Melakukan suatu tugas secara berulang.
- Percabangan (Branching/Decision): Mengambil keputusan berdasarkan kondisi tertentu (misalnya, menggunakan if-else).
Contoh:
- Tambahkan semua angka dalam serangkaian input untuk mendapatkan total.
3. Proses Pengambilan Keputusan (Branching/Conditional)
Algoritma sering kali menggunakan kondisi untuk mengambil keputusan atau menentukan jalur yang berbeda berdasarkan hasil dari suatu langkah. Misalnya:
- Jika suatu kondisi terpenuhi, maka lakukan tindakan A.
- Jika tidak terpenuhi, lakukan tindakan B.