Skip to content

Latest commit

 

History

History

dynamic_programming

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

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