Sebagai Dasar dari
Ilmu Komputer, ALGORITMA merupakan hal yang sangat penting untuk dikuasai oleh orang-orang yang berkecimpung di dunia Ilmu Komputer, dari peneliti sampai ke praktisi. Penguasaan akan Algoritma tidak cukup hanya sampai pada tahap mengetahui dan menggunakan algoritma yang tepat untuk menyelesaikan masalah. Seorang yang mengerti ilmu komputer harus juga mampu merancang dan mengembangkan sebuah algoritma berdasarkan masalah-masalah yang ditemui. Tulisan ini bertujuan untuk memberikan pengertian mendasar mengenai perancangan (desain) dan pengembangan algoritma, agar pembaca dapat tidak hanya menggunakan algoritma yang sudah ada, tetapi juga merancang dan mengembangkan algoritma sesuai dengan masalah yang akan diselesaikan.
Selain memberikan dasar perancangan, tulisan ini juga membahas jenis-jenis algoritma yang ada, untuk kemudian melakukan analisa terhadap beberapa algoritma untuk setiap jenisnya. Analisis algoritma dilakukan dengan tujuan utama agar pembaca dapat mengambil keputusan yang tepat dalam memilih algoritma untuk solusi.
Apa itu ALGORITMA?
Sebelum membahas mengenai perancangan ataupun analisis algoritma, tentunya kita terlebih dahulu harus mendefinisikan arti dari “Algoritma”. Apa itu algoritma?
Algoritma merupakan langkah-langkah (prosedur) yang harus dilakukan untuk menyelesaikan sebuah masalah.
Program komputer umumnya dibangun dengan menggunakan beberapa algoritma untuk menyelesaikan sebuah permasalahan. Misalnya sebuah program pencarian teks, akan memerlukan algoritma khusus untuk membaca dan menelusuri file, algoritma lain untuk mencari teks yang tepat di dalam file, dan satu algoritma lagi untuk menampilkan hasil pencarian ke pengguna.
Dalam mendefinisikan ALGORITMA, kita harus dapat mendefinisikan tiga hal utama dengan jelas, yaitu:
Masalah, yaitu sebuah persoalan yang ingin diselesaikan oleh sebuah algoritma.
Masukan, yaitu contoh data atau keadaan yang menjadi permasalahan.
Keluaran, yaitu bentuk akhir dari data atau keadaan setelah algoritma diimplementasikan ke masukan. Keluaran merupakan hasil ideal yang diinginkan dan dianggap telah menyelesaikan masalah.
ALGORITMA yang Baik
Kita telah mengetahui dengan jelas makna dari algoritma, sehingga pertanyaan selanjutnya adalah algoritma seperti apa yang dapat dikatakan sebagai algoritma yang baik? Pada umumnya kita tidak ingin menggunakan algoritma yang salah untuk menyelesaikan masalah karena hal ini dapat menyebabkan masalah tidak diselesaikan dengan optimal, atau lebih buruknya, tidak diselesaikan sama sekali.
Sebuah ALGORITMA yang baik memiliki sifat-sifat berikut:
- Benar, di mana algoritma menyelesaikan masalah dengan tepat, sesuai dengan definisi masukan / keluaran algoritma yang diberikan.
- Efisien, berarti algoritma menyelesaikan masalah tanpa memberatkan bagian lain dari apliikasi. Sebuah algoritma yang tidak efisien akan menggunakan sumber daya (memori, CPU) yang besar dan memberatkan aplikasi yang mengimplementasikan algoritma tersebut.
- Mudah diimplementasikan, artinya sebuah algoritma yang baik harus dapat dimengerti dengan mudah sehingga implementasi algoritma dapat dilakukan siapapun dengan pendidikan yang tepat, dalam waktu yang masuk akal.
Kebenaran dari sebuah algoritma umumnya selalu dapat dicapai, setidaknya untuk nilai-nilai masukan umum, tetapi efisiensi dan kemudahan implementasi tidak selalu didapatkan. Akan tetapi tentunya kita harus tetap berusaha mencapai ketiga hal tersebut dalam merancang sebuah algoritma. ini saja dulu yang
Guru TIKshare tentang algoritma . Semoga bermanfaat.