Senin, 28 November 2016

Analisis Matematis Algoritma Rekursif (1)

Pada pertemuan kali ini kita akan menjelaskan tentang analisis algoritma rekursif.
Algoritma rekursif adalah suatu subrutin atau fungsi atau prosedur yang memanggil dirinya sendiri.
Syarat bentuk rekursif adalah :
Basis (kondisi terminal/kondisi terbaik) dan recurrence (yang melibatkan parameter yang nilainya menuju kondisi terminal).

Dan berikut adalah langkah analisis algoritmanya:
      1.Tentukan parameter ukuran input.
      2.Tentukan operasi dasar.
3.Perhatikan apakah butuh worst, average, dan best-case. Jika jumlah eksekusi suatu operasi dasar bervariasi untuk berbagai input berukuran sama maka dibutuhkan perhitungan worst, average, dan best-case.
      4.Tentukan hubungan recurrence, dengan sebuah kondisi awal, untuk jumlah waktu operasi dasar dieksekusi.
      5. Selesaikan recurrence atau setidaknya pastikan OoG dari solusi.
Berikut contoh menganalisa algoritma pangkat sebagai berikut:


function pangkat(input p,n: integer)integer

Kamus:

p,n : integer
 
Algoritma:

If n = 0 then

   pangkat ← 1

else

   pangkat ← p*pangkat(p,n-1)

endif

endfunction

Penyelesaian :
      1.      Operasi dasar utama = perkalian
      2.      Menentukan hubungan recurrence

Basis :
Pn = 1 jika n = 0;
recurrence :

pn =  p * pn-1 jika n > 0;
      
      3.      penyelesaian recurrence:
      

Tidak ada komentar:

Posting Komentar