Dynamic Programming | DP — [Index]
1 min readAug 2, 2023
· Identification
· Steps to solve a DP problem
· DP patterns
· TODO
Identification
- DP = Enhanced Recursion
DP = Recursion + Storage - Choices are given [ Example — Include element or not ]
- Overlapping problems [ 💡 The fact that two recursion calls are being performed is a simple/raw approach to identify this => Recursive with 2 calls]
- answer expected/return is Optimal solution
→ maximum
→ minimum
→ largest
→ greatest
→ smallest
→ cheapest
Steps to solve a DP problem
Recursion → Memoize → Top-down
DP patterns
TODO
- https://www.upwork.com/resources/what-is-dynamic-programming
- https://ashutosh-kumar.medium.com/dynamic-programming-types-and-patterns-7b1406c46a6b
- https://leetcode.com/discuss/general-discussion/458695/Dynamic-Programming-Patterns
- https://leetcode.com/discuss/general-discussion/1050391/Must-do-Dynamic-programming-Problems-Category-wise
- https://www.enjoyalgorithms.com/blog/what-common-problems-solved-using-dynamic-programming
- https://patterns.eecs.berkeley.edu/?page_id=416
- https://codeforces.com/blog/entry/67679
- https://www.geeksforgeeks.org/dynamic-programming/
- Questions — https://github.com/dilipkumar2k6/dynamic-programming