A. APA ITU ALGORITMA
Algoritma adalah suatu langkah atau metode yang sudah
direncanakan dengan matang sehingga sudah berurutan dan tersusun dengan rapi
sert abiasanya digunakan untuk memecahkan suatu permasalahan dengan cara
memberikan instruksi untuk melakukan tindakan.
Ada pula yang mengatakan bahwa agoritma merupakan proses
atau serangkaian aturan yang harus diikuti dalam perhitungan atau operasi
pemecahan masalah lainnya, terutama oleh komputer.
B. DEFINISI ALGORITMA MENURUT AHLI
Berikut ini beberapa definisi algoritma menurut para ahli,
diantaranya :
1. Abu Ja’far Muhammad Ibnu Musa
Al-Khawarizmi
Algoritma adalah suatu metode khusus yang digunakan untuk
menyelesaikan masalah.
2. Donald Ervin Knuth
Algoritma adalah sekumpulan aturan-aturan berhingga yang
memberikan sederetan operasi-operasi untuk menyelesaikan suatu masalah
tertentu.
3. S. E Goodmand dan S.T Hedetniemi
Algoritma adalah urutan terbatas dari operasi-operasi yang
terdefinisi dengan baik, dimana masing-masing membutuhkan memori dan waktu yang
terbatas untuk menyelesaikan suatu masalah.
4. Seymour Lipschutz dan Marc Lipson
Algoritma adalah suatu daftar langkah demi langkah yang
terhingga dari instruksi-instruksi yang terdefinisikan dengan jelas yang
digunakan untuk memecahkan permasalahan tertentu.
5. Marvin Minsky
Algoritma adalah seperangkat aturan yang memberitahukan
kepada kita dari waktu ke waktu, tepatnya bagaimana untuk bertindak.
6. Kani
Algoritma adalah suatu usaha dengan sebuah uruan operasi
yang sudah disusun secara sistematis dan logis dan dapat dimanfaatkan untuk
menyelesaikan sebuah permasalahan demi menciptakan sebuah output tertentu.
7. Sismoro
Algoritma adalah sekumpulan instruksi atau langkah-langkah
yang sudah dituliskan secara sistematis dan digunakan untuk menyelesaikan suatu
persoalan atau suatu permasalahan matematika dan logika dengan bantuan
komputer.
C. CIRI-CIRI ALGORITMA
Algoritma sendiri memiliki lima ciri utama, diantaranya:
1. Input
Ciri pertama dari algoritma adalah adanya input. Input
merupakan permasalahan yang dihadapi dan akan dicarikan solusinya. Algoritma
memiliki nilai nol atau lebih input (masukan). Di dalam algoritma minimal
memiliki nilai 0 atau lebih.
2. Proses
Ciri yang kedua adanya proses. Proses ini merupakan
langkah-langkah yang harus dilakukan untuk mencapai tujuan akhir.
3. Output
Output merupakan solusi atau tampilan akhir yang didapatkan
dari suatu algoritma. Algoritma ini memiliki satu output.
4. Instruksinya jelas
Ciri algoritma yang keempat yakni memiliki instruksi yang
jelas dan tidak ambigu. Instruksi yang jelas bertujuan untuk mengurangi
kesalahan dalam menghasilkan output.
5. Ada tujuan yang ingin dicapai
Ciri algoritma yang terakhir yakni adanya tujuan yang ingin
dicapai. Tujuan ini adalah akhir dari program dimana program akan berhenti
ketika tujuan akhir telah tercapai.
D.
MANFAAT ALGORITMA
Algoritma memiliki beberapa manfaat dalam penerapannya,
diantaranya yakni:
·
Membantu menyederhanakan program yang rumit dan
besar.
·
Memudahkan dalam membuat sebuah program untuk
masalah tertentu.
·
Algoritma dapat digunakan berkali-kali untuk
menyelesaikan permasalahan yang sama.
·
Membantu memecahkan suatu permasalahan dengan
logika dan sistematis.
·
Meminimalisir penulisan program secara berulang-ualng.
·
Agar dapat melakukan pendekatan top-down dan
devide and conquer.
·
Memudahkan proses modifikasi pada program karena
bisa dilakukan hanya pada satu modul tanpa harus mengubah modul lainnya.
·
Ketika terjadi kesalahan, algoritma dapat
membantu menemukannya karena alur kerja yang jelas.
·
Memudahkan proses dokumentasi.
E. JENIS-JENIS ALGORITMA
Dr. Christoph Koutschan, seorang ahli matematika dan
komputer asal Jerman, ada 32 algoritma yang penting dalam ilmu komputer. Namun,
jika dilihat dari fungsinya, ada beberapa jenis algoritma:
1. Algoritma Rekursi
Algoritma rekursi (recursive algorithm) adalah jenis
algoritma yang akan melakukan pengulangan hingga sebuah masalah mendapatkan
solusi. Selain itu, algoritma yang memanggil dirinya sendiri secara
berulang-ulang hingga masalah terpecahkan.
2. Algoritma Divide and Conquer
Algoritma divide and conquer adalah jenis algoritma yang
membagi sebuah permasalahan menjadi beberapa bagian. Tahap dari algoritma
divide dan conquer yakni membagi masalah menjadi beberapa bagian yang sama,
kemudian mencari sebuah solusi utama setelah mendapatkan solusi untuk
bagian-bagian kecilnya.
3. Algoritma dynamic programming
Algoritma dynamic programming merupakan algoritma yang
bekerja dengan cara mencari solusi dari setiap bagian terkecil masalah, yang
kemudian hasilnya ini akan disimpan untuk memecahkan masalah baru di masa depan.
4. Algoritma greedy
Algoritma greedy merupakan algoritma yang digunakan ketika
menemukan masalah pada optimasi. Cara kerja algoritma yang satu ini yakni
dengan menemukan solusi optimal untuk lokal tanpa memperhatikan akibat yang
akan diterimanya, sehingga dapat menemukan solusi optimal pada tingkat global.
5. Algoritma brute force
Algoritma brute force ini adalah jenis algoritma dengan
konsep paling sederhana. Algoritma ini menggunakan pengulangan dari setiap
solusi yang ditemukan untuk menemukan solusi paling tepat terkait dengan
permasalahan yang ada.
6. Algoritma backtracking
Algoritma backtracking bekerja dengan cara rekursif saat
hendak memecahkan permasalahan.
F. STRUKTUR ALGORITMA
Selanjutnya, algoritma sendiri memiliki beberapa strktur di
dalamnya :
·
Algoritma sekuensial atau sequence algorithm
terdiri dari beberapa pemerintah dan tersusun secara beraturan untuk
memunculkan beberapa instruksi tertentu.
·
Algotitma pengulangan atau looping algorithm,
yakni algoritma yang digunakan untuk menyampaikan beberapa perintah dan
menyesuaikan dengan syarat-syarat yang telah ditentukan.
·
Algoritma percabangan/bersuarat atau conditional
algorithm. Algoritma yang satu ini digunakan untuk algoritma yang mampu memilih
beberapa pilihan tertentu yang telah diperintahkan.
G. CONTOH-CONTOH ALGORITMA
Pada akhirnya, algoritma digunakan bukan hanya untuk bidang
ilmu komputer saja tetai juga bisa dimanfaatkan dalam kegiatan sehari-hari
manusia. Mulailah dengan suatu musalah yang terjadi di dalam kehidupan
sehari-hari, contohnya yakni:
1. Membuat Kopi Instan
Seperti yang sudah disampaikan sebelumnya, algoritma bisa
digunakan untuk memecahkan masalah yang berkaitan dengan kehidupan sehari-hari
seperti membuat kopi instan. Contoh algoritmanya sebagai berikut :
·
Buka kemasan kopi sachetnya.
·
Tungkan kopi ke dalam gelas.
·
Siapkan air panas.
·
Tuangkan air panas ke dalam gelas berisi kopi.
·
Aduk kopi hingga merata.
·
Kopi instan siap diminum.
Berikut ini hasil flowchart dari membuat kopi instan:
2. Mengirim SMS
Contoh algoritma mengirim SMS, jika dituliskan yakni:
·
Buka menu SMS pada ponsel
·
Pilih kontak atau nomor telepon
·
Ketik oesan yang akan dikirim
·
Tekan tombol kirim
·
SMS akan terkirim
Berikut ini contoh flowchart dari mengirim SMS
H. KESIMPULAN
Pada intinya lagoritma ini merupakan suatu cara atau metode
atau prosedur yang dapat dimanfaatkan untuk memecahkan suatu permasalahan yang
sedang terjadi. Pemecahan masalah ini bisa dari berbagai bidang, baik bidang
komputer, matematika, pemrosesan data, penalaran, atau bahkan perhitungan. Ada
beberapa yang menjadi ciri dari algoritma yakni input, proses, output,
instruksinya jelas, dan ada tujuannya.
Algoritma juga mencakup perhitungan, penalaran, dan
pemrosesan data yang dapat disajikan dalam bahasa alami, kode, diagram alur
(flowchart), dan lain-lain. Contoh algoritma di atas merupakan bagian dari
algoritma yang tujuannya untuk menyelesaikan permasalahan. Suatu algoritma ini
bisa diekspresikan dan dianalisis melalui diagram seperti contoh.
Tidak ada komentar:
Posting Komentar