Introducing Dynamic Programming With Fibonacci Numbers
In this lesson, we'll use a dynamic programming technique called memoization to reduce the time complexity of the Fibonacci function.
We'll cover the following...
What is Dynamic Programming?
Dynamic programming algorithms solve problems by combining results of subproblems, just like in the divide and conquer algorithms.
“Those who cannot remember the past are condemned to repeat it” – Dynamic Programming
Characteristics
Most problems that can be solved with dynamic programming can also be solved with a divide and conquer approach. The difference between the two is that the dynamic programming approach ...