Anda di halaman 1dari 3

DESAIN DAN ANALISIS ALGORITMA RELASI REKURENSI

OLEH : LUH GEDE PUTRI SUARDANI 1208605018

PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS UDAYANA 2013

6. Buat satu contoh algoritma rekursif selain menghitung faktorial dan menara Hanoi. Algoritma Rekursif Mencari Fibonacci Deret Fibonacci secara rekursif sebagai berikut: ( ) {

Function fibo(input n: integer) integer {Menghitung hasil penjumlahan dari n buah deret bilangan Fibonacci. Masukan : n Keluaran : fib(n) atau hasil dari jumlah n buah deret bilangan Fibonacci} begin; if n 1 OR n 2 then fib(n) 1; else fib(b) fib(n-1) + fib(n-2); return fib(n); end;

7. Hitung Time Efficiency (t(n)) algoritma no 6, dalam notasi Asymptotic, dan gambarkan grafik dari notasi Asymtotic yang didapat.
1) 2) 3) 4) 5) 6) 7) begin; if n 1 OR n 2 then fib(n) 1; else fib(n) fib(n-1) + fib(n-2); return fib(n); end; (2 kali) (1 kali) (n-2 kali) (n kali)

Operasi pengisian nilai


n 1 n 2 fib(n) 1 fib(n) fib(n-1) + fib(n-2) (1 kali) (1 kali) (1 kali) (n-2 kali)

Operasi cetak
return fib(n) (n kali)

Jumlah seluruh operasi adalah t1 = 1 + 1 + 1 + (n-2) + n = 2n + 1

Pada baris 1 (if n1 OR n2 then) dieksekusi sebanyak 2 kali, karena terdapat pengisian nilai n1 dan n2. Pada baris 2 (Fib(n) 1) dieksekusi 1 kali karena n bisa bernilai 2 ATAU 1. Pada baris 4 (Fib(n) Fib(n-1)+Fib(n-2)), kode tersebut hanya dieksekusi jika n bernilai lebih dari 2, jadi jika input sejumlah n, maka baris 4 dieksekusi sebanyak n-2 kali. Pada baris 5 (return Fib(n)), kode tersebut akan dieksekusi sebanyak n kali

Untuk kategori algoritma sesuai T(n) adalah t(n) O(n). Algoritma Linier. Grafik dari pertumbuhan ukuran masukan n dengan rentang antara 0 sampai 1000 adalah

Hasil tersebut mejelaskan bahwa jika input mendekati 1000, maka kompleksitas waktunya mendekati 2000 s. Hasil tersebut didapat dengan source code berikut..

Anda mungkin juga menyukai