Operations research, mathematical programming Concept
Dynamic programming
Summary
Dynamic programming is a method for designing algorithms that solves a problem through a family of overlapping subproblems. The value of each subproblem is given by a recurrence in terms of smaller subproblems, and each value is computed only once and stored. It applies when optimal solutions are built from optimal solutions of subproblems, and it turns many exponential-time recursions into polynomial-time algorithms. In optimization and control the recurrence is called the Bellman equation.
Where this leads
14 pages build on this one.
Further reading
About this page
| Tag | R3FXF08WBH |
|---|---|
| URI | m2://R3FXF08WBH |
| Kind | concept |
| Writing | W0 stub |
| MSC | 90C39, 68W40 |
| Specializes | Algorithm |
| Same as | |
| Changed | 3 November 2026 |
Markdown · JSON · Edit on GitHub
What this page needs for W1
- a source with a locator (0 of 1)
The writing levels say how complete the text of a page is. They do not measure its truth.
What links here
Used by
- Needleman–Wunsch algorithm
- CYK algorithm
- Knapsack problem
- Dynamic lot-size model
- Bellman equation
- Smith–Waterman algorithm
- Viterbi algorithm
- Felsenstein's pruning algorithm
- Stochastic dynamic programming
- Nussinov algorithm
- Held–Karp algorithm