π Blog 1: DP Fundamentals & State Definition
- Recurrence relations, overlapping subproblems, memoization vs tabulation.
- How to define state
dp[i][j]
. - Base cases and transitions.
- Classic Example: Fibonacci, Climbing Stairs.
π Blog 2: 1D DP (Linear Problems)
- House Robber
- Maximum Subarray (Kadaneβs Algorithm)
- Jump Game variations
- Min/Max cost path in linear setup
π Blog 3: 2D Grid DP (Matrix Problems)
- Unique Paths
- Minimum Path Sum
- Cherry Pickup / Grid Collection problems
- Obstacle Grid navigation
π Blog 4: Knapsack Pattern (Subset/Partition DP)
- 0/1 Knapsack
- Subset Sum
- Partition Equal Subset Sum
- Target Sum problems
π Blog 5: String DP (Subsequence & Substring)
- Longest Common Subsequence (LCS)
- Longest Palindromic Subsequence
- Edit Distance
- Regular Expression Matching
π Blog 6: DP on Subsequences (Patterns in Arrays/Strings)
- Longest Increasing Subsequence (LIS)
- Russian Doll Envelopes
- Maximum Length of Pair Chain
- Number of Increasing Subsequences
π Blog 7: DP on Intervals
- Matrix Chain Multiplication
- Burst Balloons
- Palindrome Partitioning
- Optimal BST
π Blog 8: DP on Trees & Graphs
- Diameter of Tree (DP on Trees)
- House Robber III (Tree version)
- DP with DFS (paths in DAGs)
- Tree Coloring / Independent Set problems
π Blog 9: DP with Bitmasking (Advanced)
- Traveling Salesman Problem (TSP)
- Minimum Number of Incompatibilities
- Count Hamiltonian Paths with DP
- Partitioning Problems with Bitmask
π Blog 10: DP Optimization Techniques
- Space Optimization (rolling arrays)
- Divide & Conquer DP
- Convex Hull Trick
- Knuth Optimization
- DP with Monotonic Queue
π₯ This will make you interview-proof and also system-design ready for optimization problems where DP plays a hidden role.
Top comments (0)