Skip to content

MAOMislive/Fibonacci-Dynamic-Programming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

Finding Nth Fibonacci Number using Dynamic Programming

This program finds the Nth Fibonacci number using dynamic programming approach. Dynamic programming is an efficient algorithmic technique that involves breaking down a problem into smaller sub-problems and solving each sub-problem only once.

The Fibonacci sequence is a sequence of numbers in which each number is the sum of the two preceding numbers. The sequence starts with 0 and 1, and the next number in the sequence is the sum of the two previous numbers. The first few numbers in the sequence are:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...

To find the Nth Fibonacci number, we can use a dynamic programming approach where we store the already computed Fibonacci numbers in an array and use them to calculate the next Fibonacci number. This reduces the number of computations required and makes the algorithm more efficient.

Implementation Details

The program uses a dynamic programming approach to find the Nth Fibonacci number. It first checks if the Nth Fibonacci number is already computed and stored in the array. If it is, then it returns the value from the array. Otherwise, it calculates the Nth Fibonacci number using the formula

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

where fib(n-1) and fib(n-2) are the two preceding Fibonacci numbers.
The program then stores the computed Fibonacci number in the array for future use. Finally, it returns the Nth Fibonacci number.

Time Complexity

The time complexity of the dynamic programming approach used in this program is O(N), where N is the input value. This is because the program computes each Fibonacci number only once and stores it in the array for future use.

Space Complexity

The space complexity of the dynamic programming approach used in this program is O(N), where N is the input value. This is because the program stores the computed Fibonacci numbers in an array of size N.

Limitations

The program may not be able to find the Nth Fibonacci number for very large values of N due to memory constraints. Additionally, the program may not be able to accurately compute the Nth Fibonacci number for values of N that are greater than the maximum value representable by the data type used to store the Fibonacci numbers.

About

Finding Nth Fibonacci number using Dynamic Programming

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages