Dynamic Programming is mainly an optimization over plain recursion. Wherever we see a recursive solution that has repeated calls for same inputs, we can optimize it using Dynamic Programming. The idea is to simply store the results of subproblems, so that we do not have to re-compute them when needed later.
51 words
In reply to MD. MINHAZUL ALAM 192-15-2877
Re: Dynamic programming importance.
Dynamic programming is a technique to solve the recursive problems in more efficient manner. Many times in recursion we solve the sub-problems repeatedly. In dynamic programming we store the solution of these sub-problems so that we do not have to solve them again. Besides that, it has three major properties for giving us a optimal solution and those are
*Recursive relation
**Tabular completion
***Traceback
*Recursive relation
**Tabular completion
***Traceback
64 words
In reply to MD. MINHAZUL ALAM 192-15-2877
Re: Dynamic programming importance.
The following computer problems can be solved using dynamic programming approach −
- Fibonacci number series
- Knapsack problem
- Tower of Hanoi
- All pair shortest path by Floyd-Warshall
- Shortest path by Dijkstra
- Project scheduling
26 words