Skip to content

Latest commit

 

History

History
51 lines (41 loc) · 1.88 KB

File metadata and controls

51 lines (41 loc) · 1.88 KB

Dynamic Programming

Problems focusing on optimization using memoization and tabulation techniques.

Key Concepts Covered

  • Memoization (top-down DP)
  • Tabulation (bottom-up DP)
  • State definition and transitions
  • Optimal substructure
  • Overlapping subproblems
  • Space optimization techniques
  • Classic DP patterns (knapsack, LCS, LIS, etc.)

Problems in this Directory

Classic DP Problems

Matrix DP

Subsequence Problems

Game/Party Problems

Knapsack Variants

Special Problems

Tips

  • Identify the state and transitions first
  • Start with recursive solution, then memoize
  • Consider space optimization after solving
  • Draw the DP table for better understanding
  • Practice recognizing DP patterns