Round 6: Dynamic programming and greedy algorithms
This round introduces two algorithm design techniques, dynamic programming and greedy algorithms, that can be applied to solve many decision and optimization problems.
Material in Introduction to Algorithms (Aalto access):
Dynamic programming: Sections 15.0, 15.1 and 15.4
Basics of greedy algorithms: Sections 16.1 and 16.2
Material elsewhere and external links:
MIT Open Courseware video on dynamic programming, part I (we’ll come back to shortest paths, introduced in the second half of the video, later in this course)
MIT Open Courseware video on dynamic programming, part III