Dynamic Programming

Updated: 17 June 2026

A methodology for solving algorithmic problems and reducing time or space complexity by focusing on identifying common recurring patterns in algorithms and enabling us to solve the problem by taking advantage of the underlying structure to optimize the results

References

These notes are based on the following courses/material