The Fibonacci numbers are the numbers in the following integer sequence.
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ……..
In mathematical terms, the sequence Fn of Fibonacci numbers is defined by the recurrence relation
Fn = Fn-1 + Fn-2
with seed values
F0 = 0 and F1 = 1.
Method 1 ( Use recursion ) :
def Fibonacci(n):
if n< 0 :
print ( "Incorrect input" )
elif n = = 1 :
return 0
elif n = = 2 :
return 1
else :
return Fibonacci(n - 1 ) + Fibonacci(n - 2 )
print (Fibonacci( 9 ))
|
Output:
21
Method 2 ( Use Dynamic Programming ) :
FibArray = [ 0 , 1 ]
def fibonacci(n):
if n< 0 :
print ( "Incorrect input" )
elif n< = len (FibArray):
return FibArray[n - 1 ]
else :
temp_fib = fibonacci(n - 1 ) + fibonacci(n - 2 )
FibArray.append(temp_fib)
return temp_fib
print (fibonacci( 9 ))
|
Output:
21
Method 3 ( Space Optimized):
def fibonacci(n):
a = 0
b = 1
if n < 0 :
print ( "Incorrect input" )
elif n = = 0 :
return a
elif n = = 1 :
return b
else :
for i in range ( 2 ,n):
c = a + b
a = b
b = c
return b
print (fibonacci( 9 ))
|
Output:
21
No comments:
Post a Comment
Your feedback is highly appreciated and will help us to improve our content.