Fibonacci numbers are computed using the following recursive

Fibonacci numbers are computed using the following recursive function.

int Fibonacci(int N)

{

if (N == 0 || N == 1) return N;

else

return Fibonacci(N-1) + Fibonacci(N-2);

}

a. Show the steps to compute Fibonacci(6)

b. What is the recurrence relation for the runtime for Fibonacci(N)

Solution

Fibonacci numbers are computed using the following recursive function.
int Fibonacci(int N)
{
if (N == 0 || N == 1) return N;
else
return Fibonacci(N-1) + Fibonacci(N-2);
}
a. Show the steps to compute Fibonacci(6)
Fibonacci(6)
= Fibonacci(5) + Fibonacci(4)
= Fibonacci(4) + Fibonacci(3) + Fibonacci(4)
= Fibonacci(3) + Fibonacci(2) + Fibonacci(3) + Fibonacci(4)
= Fibonacci(2) + Fibonacci(1) + Fibonacci(2) + Fibonacci(3) + Fibonacci(4)
= Fibonacci(1) + Fibonacci(0) + Fibonacci(1) + Fibonacci(2) + Fibonacci(3) + Fibonacci(4)
= 1 + Fibonacci(0) + Fibonacci(1) + Fibonacci(2) + Fibonacci(3) + Fibonacci(4)
= 1 + 0 + Fibonacci(1) + Fibonacci(2) + Fibonacci(3) + Fibonacci(4)
= 1 + 0 + 1 + Fibonacci(2) + Fibonacci(3) + Fibonacci(4)
= 1 + 0 + 1 + Fibonacci(1) + Fibonacci(0) + Fibonacci(3) + Fibonacci(4)
= 1 + 0 + 1 + 1 + Fibonacci(0) + Fibonacci(3) + Fibonacci(4)
= 1 + 0 + 1 + 1 + 0 + Fibonacci(3) + Fibonacci(4)
= 1 + 0 + 1 + 1 + 0 + Fibonacci(2) + Fibonacci(1) + Fibonacci(4)
= 1 + 0 + 1 + 1 + 0 + Fibonacci(1) + Fibonacci(0) + Fibonacci(1) + Fibonacci(4)
= 1 + 0 + 1 + 1 + 0 + 1 + Fibonacci(0) + Fibonacci(1) + Fibonacci(4)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + Fibonacci(1) + Fibonacci(4)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + Fibonacci(4)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + Fibonacci(3) + Fibonacci(2)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + Fibonacci(2) + Fibonacci(1) + Fibonacci(2)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + Fibonacci(1) + Fibonacci(0) + Fibonacci(1) + Fibonacci(2)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + 1 + Fibonacci(0) + Fibonacci(1) + Fibonacci(2)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + 1 + 0 + Fibonacci(1) + Fibonacci(2)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + 1 + 0 + 1 + Fibonacci(2)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + 1 + 0 + 1 + Fibonacci(1) + Fibonacci(0)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + 1 + 0 + 1 + 1 + Fibonacci(0)
= 1 + 0 + 1 + 1 + 0 + 1 + 0 + 1 + 1 + 0 + 1 + 1 + 0 = 8

b. What is the recurrence relation for the runtime for Fibonacci(N)
The recurrence relation is:
Fibonacci(N) = Fibonacci(N-1) + Fibonacci(N-2) if N > 1
Fibonacci(N) = N if N ==1 or N == 0

Fibonacci numbers are computed using the following recursive function. int Fibonacci(int N) { if (N == 0 || N == 1) return N; else return Fibonacci(N-1) + Fibon

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site