Langsung ke konten utama

Algoritma

Saat ini, teman-teman mungkin sudah banyak mendengar tentang istilah algoritma. Ya, algoritma sangat penting dalam dunia pemrograman. Bagi kamu yang sudah lama berkecimpung di dunia komputer pasti sudah tidak asing lagi dengan istilah ini. Namun, bagi yang masih baru mengenal perangkat ini, komposisi, fitur, dan tujuan penggunaan perangkat ini tentu masih belum jelas.

Algoritma tidak hanya digunakan untuk menyelesaikan permasalahan pada komputer saja. Namun, algoritma juga dapat digunakan untuk menyelesaikan permasalahan yang ada dalam kehidupan sehari-hari. Selain itu, setiap masalah  yang berkaitan dengan suatu proses atau langkah prosedural biasanya memerlukan suatu algoritma.

Apa itu Algoritma

Sebelumnya, mari kita lihat pengertian algoritma menurut ahli. Donald Ervin Knuth menyebutkan algoritma adalah sekumpulan aturan-aturan berhingga yang memberikan sederetan operasi-operasi untuk menyelesaikan masalah tertentu.

Sederhananya, algoritma adalah suatu langkah atau metode yang telah direncanakan secara matang agar berurutan dan tersusun rapi, serta sering digunakan untuk menyelesaikan suatu masalah dengan  memberikan petunjuk tindakan.

Karakteristik Algoritma

Agar suatu instruksi dapat menjadi suatu algoritma, instruksi tersebut harus mempunyai beberapa ciri-ciri. 

Pertama, apabila algoritma memerlukan input, maka algoritma yang ada harus didefinisikan secara jelas. Selanjutnya algoritma yang ada jelas dan tidak ambigu, setiap proses, langkah dan instruksi yang ada harus jelas dalam segala hal. Terakhir, tentu algoritma mempunyai tujuan yang ingin dicapai.

Jenis-jenis Algoritma

Algoritma sendiri dibagi ke dalam beberapa jenis. Yuk, kita lihat jenis-jenis algoritma yang kami lansir dari Nesaba Media. 

1. Algoritma Rekursif

Algoritma rekursif adalah jenis algoritma yang akan melakukan perulangan sendiri hingga masalahnya terpecahkan. Selain itu, algoritma akan memanggil dirinya sendiri berulang kali hingga masalahnya terpecahkan.

2. Algoritma Divide and Conquer

Algoritma Divide and Conquer merupakan salah satu jenis algoritma yang membagi suatu masalah menjadi beberapa bagian. Langkah-langkah algoritma membagi dan menaklukkan antara lain membagi masalah menjadi bagian-bagian yang sama dan kemudian mencari  solusi utama setelah diperoleh solusi untuk sub-bagiannya.

3. Algoritma Dynamic Programming

Algoritma pemrograman dinamis (Algoritma dynamic programming) merupakan algoritma yang bekerja dengan cara mencari solusi dari setiap bagian terkecil dari suatu permasalahan, hasilnya  akan disimpan untuk menyelesaikan permasalahan baru di masa yang akan datang.

4. Algoritma Greedy

Algoritma greedy merupakan algoritma yang digunakan untuk mencari permasalahan optimasi. Cara kerja algoritma  ini adalah mencari solusi optimal  lokal apapun konsekuensi yang  diterimanya, sehingga dapat ditemukan solusi optimal  global.

5. Algoritma Brute Force

Algoritma brute force ini merupakan jenis algoritma dengan konsep yang paling sederhana. Algoritma ini menggunakan iterasi dari setiap solusi yang ditemukan untuk menemukan solusi yang paling sesuai dengan permasalahan yang ada.

Postingan populer dari blog ini

struktur data graph

4 Bilangan Komputer: Desimal, Biner, Oktal, dan Heksadesimal