Algoritma adalah sekumpulan berhingga dari instruksi-instruksi untuk melakukan
perhitungan/ komputasi atau memecahkan suatu masalah. Suatu algoritma yang baik harus
memiliki sifat-sifat berikut ini:
• Masukan (input) dari himpunan tertentu
• Keluaran (output) pada himpunan tertentu (solusi)
• Definiteness dari setiap langkah perhitungan
• Kebenaran (correctness) dari keluaran untuk setiap masukan yang mungkin
• Keberhinggaan (finiteness) dari banyaknya langkah perhitungan
• Kefektifan (effectiveness) dari setiap langkah perhitungan dan
• Keterumuman (generality) dalam suatu kelompok permasalahan yang dipecahkan
Kita akan memakai pseudocode untuk menuliskan algoritma, yang mirip dengan bahasa
Pascal. Sebagai contoh pertama, tinjau algoritma mencari nilai maksimum dari suatu barisan
yang panjangnya berhingga berikut ini.
procedure max(a1, a2, …, an: integers)
max := a1
for i := 2 to n
if max < ai then max := ai
{max adalah elemen terbesar dalam barisan}
Dari masukan barisan a1, a2, ..., pertama-tama variabel max di-inisiasi dengan suku pertama
barisan. Selanjutnya suku-suku berikutnya diambil dan dibandingkan dengan max, jika lebih
besar maka nila lama max diganti dengan nilai baru—yaitu suku sekarang, sedangkan jika
(sama atau lebih kecil), algoritma mengambil suku berikutnya—demikian seterusnya. Diakhir
proses, suku terbesar dari barisan akan tertampung di dalam max
untuk lebih lengkapnya nih pdf nya Algoritma Kompleksitas, pencarian dan Teori Bilangan
perhitungan/ komputasi atau memecahkan suatu masalah. Suatu algoritma yang baik harus
memiliki sifat-sifat berikut ini:
• Masukan (input) dari himpunan tertentu
• Keluaran (output) pada himpunan tertentu (solusi)
• Definiteness dari setiap langkah perhitungan
• Kebenaran (correctness) dari keluaran untuk setiap masukan yang mungkin
• Keberhinggaan (finiteness) dari banyaknya langkah perhitungan
• Kefektifan (effectiveness) dari setiap langkah perhitungan dan
• Keterumuman (generality) dalam suatu kelompok permasalahan yang dipecahkan
Kita akan memakai pseudocode untuk menuliskan algoritma, yang mirip dengan bahasa
Pascal. Sebagai contoh pertama, tinjau algoritma mencari nilai maksimum dari suatu barisan
yang panjangnya berhingga berikut ini.
procedure max(a1, a2, …, an: integers)
max := a1
for i := 2 to n
if max < ai then max := ai
{max adalah elemen terbesar dalam barisan}
Dari masukan barisan a1, a2, ..., pertama-tama variabel max di-inisiasi dengan suku pertama
barisan. Selanjutnya suku-suku berikutnya diambil dan dibandingkan dengan max, jika lebih
besar maka nila lama max diganti dengan nilai baru—yaitu suku sekarang, sedangkan jika
(sama atau lebih kecil), algoritma mengambil suku berikutnya—demikian seterusnya. Diakhir
proses, suku terbesar dari barisan akan tertampung di dalam max
untuk lebih lengkapnya nih pdf nya Algoritma Kompleksitas, pencarian dan Teori Bilangan
Komentar
Posting Komentar