Dynamic programming

Dynamic programming is both a mathematical optimization method and a computer programming method. The method was developed by Richard Bellman in the 1950s and has found applications in numerous fields, from aerospace engineering to economics. More info(wikipedia)


Following are some popular dynamic programming problems,

Longest Common Subsequence Problem

Shortest Common Supersequence Problem

Longest Increasing Subsequence Problem

The Levenshtein distance (Edit distance) Problem

Matrix Chain Multiplication Problem

0–1 Knapsack Problem

Partition Problem

Rod Cutting Problem

Coin change-making problem

Word Break Problem

Useful resources