8. Dynamic Programming I
Learning Objectives
By the end of this chapter, you will be able to:
- Analyze whether the dynamic programming approach can be applied to a given problem
- Compare and choose the right approach between memoization and tabulation
- Choose an appropriate caching solution using memoization
- Analyze a problem using a naive brute-force approach
- Develop a dynamic programming solution by implementing progressively optimized algorithms
In this chapter, you will be introduced to the dynamic programming approach. This chapter will guide you through implementing this approach for solving some well-known problems in computer science.
Introduction
Loved and feared in equal measure by many programmers, dynamic programming (DP
Get C++ Data Structures and Algorithm Design Principles now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.