Dynamic Programming Cheat Sheet

Both a mathematical optimization method and a computer programming method that breaks down complicated problems to sub-problems.

Interview Problems

Why do I see duplicate challenges? You'll see duplicates because a question may fall into different categories. We keep them here because we believe that it is good to sporadically review old problems. They are optional if already completed-- but reviewing them (and more importantly re-doing them with the new knowledge) will ensure that you've internalized the patterns.