Dynamic Programming Foundations
Dynamic Programming Foundations
DP works when a problem has overlapping subproblems and optimal substructure.
Checklist
- Define state clearly
- Write transition relation
- Set base cases
- Choose top-down or bottom-up
Practice
- Climbing Stairs
- Coin Change
- Minimum Path Sum
- Edit Distance
- Distinct Subsequences