Algoritma, Kompleksitas, Pencarian dan Teori Bilangan


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

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s