A technique in algorithmic problem solving which involves breaking down a problem into a series of smaller ones (subproblems) and solving them separately. This way, when the same subproblem emerges, there is already a solution for it. It is an optimization method of sorts.
|Developed by||Richard Bellman|
Richard Bellman was the first one to define the term, although when he first used it in 1940's, it was to describe the process of finding the best decision for each step.