Dynamic programming
Practice this questionWANT TO UNDERSTAND THE CONCEPT FIRST?Learn Dynamic programming
Overview
Dynamic programming divides a problem into overlapping subproblems and stores results to avoid recomputation.
Common DP questions
- Fibonacci
- Climbing stairs
- House robber
- Coin change
- Longest increasing subsequence
- Word break
- Unique paths
- Edit distance
- Partition equal subset sum
DP states
- 1D DP
- 2D DP
- memoization
- tabulation
Interview guidance
If the same subproblem occurs repeatedly, DP is often the right direction.
Adapted from 14_DSA_MASTER.md · “11. Dynamic programming”. Code examples are study fragments. Difficulty and core labels are editorial estimates; version-specific behavior should be checked against your project.