Kamis, 04 Maret 2010

Algoritma

Algorimta adalah spesifikasi urut-urutan langkah untuk melakukan pekerjaan tertentu. Dalam kehidupan sehari-hari sering kali kita harus membuat algoritma untuk merencanakan aktivitas kita (meskipun sering kali tidak kita sadari). Membuat jadwal kegiatan hari ini, mengatur waktu persiapan ujian, membuat daftar belanja, dan lain-lain adalah beberapa aktivitas sehari-hari yang melibatkan pembuatan algoritma.

Dalam program komputer, algoritma berarti urutan-urutan langkah kasar yang harus dilakukan untuk menyelesaikan masalah. Algoritma harus dibuat sebelum membuat program dalam bahasa tertentu. Ada beberapa pertimbangan dalam pemilihan algoritma. Pertama, algoritma haruslah benar. Artinya, algortima akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli seberapa bagusnya algortima, bila memberikan keluaran yang salah, pastilah algoritma tersebut bukan merupakan algoritma yang baik.

Kedua, kita harus tahu seberapa baik hasil yang dapat dicapai oleh algoritma tersebut. Hal itu penting terutama pada algoritma-algoritma untuk menyelesaikan masalah yang mebutuhkan aproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya.

Ketiga, adalah efisiensi algoritma. efisiensi algoritma dapat ditinjau dari 2 hal, yaitu efesiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi bila kita harus menunggu berjam-jam (berhari-hari) untuk mendapatkan keluarannya, algortima tersebut biasanya tidak akan dipakai. Orang menginginkan keluaran yang cepat sehingga segera dapat dilihat. Ada aspek lain yang berhubungan dengan efisiensi algoritma, yaitu tentang memori yang digunakan. Semakin banyak memori yang dibutuhkan algoritma untuk memecahkan suatu masalah, semakin buruklah algoritma tersebut.

Memori yang dibutuhkan dalam pemrograman berhubungan dengan perangkat komputer. Oleh karena sekarang ini harga perangkat keras cenderung menurun, maka efisiensi memori bukanlah masalah yang serius. orang menganggap bahwa waktu proses merupakan faktor yang lebih penting dibandingkan memori.

Sumber :

Siang, Jong Jek. 2006. Matematika Diskrit dan Aplikasinya pada Ilmu Komputer. Yogyakarta : Andi Offset.

Tidak ada komentar: