Lecture 19: Dynamic Programming I: Fibonacci, Shortest Paths

MIT OpenCourseWare4 HN recommenders · 2016–2021
2.9M views · lecture · evergreen · Uploaded 2013-01-14

Erik Demaine's MIT 6.006 lecture introducing dynamic programming through Fibonacci numbers and shortest paths. It covers memoization, subproblems and optimal substructure.

Recommended as a clear introduction to dynamic programming from a well-regarded instructor.

Watch on YouTube

4 comments from Hacker News

@philippeback2016 · in “The Imposter's Handbook”

When you deal with large data sets (e.g. Hadoop/Spark...), BigO starts to hit badly. Dynamic Programming also requires you to have a clue about it. See [VIDEO] for some cool explanations.

RecommendsView on HN
@gbacon2019 · in “Graphical Introduction to Dynamic Programming”

You may also like a couple of lectures by Erik Demaine: Dynamic Programming I: Fibonacci, Shortest Paths [VIDEO] Dynamic Programming II: Text Justification, Blackjack [LINK]

RecommendsView on HN
@dehrmann2021 · in “Algorithms by Jeff Erickson”

I don't think I've ever been asked a DP problem in an interview, and only had to use it while programming once . That said, I liked the MIT lecture on it: [VIDEO]

RecommendsView on HN
@dominotw2021 · in “Dynamic Programming vs. Divide-and-Conquer (2018)”

> on interviews they want you to explicitly construct the array very often i.e. it's the different between hire and a strong hire exactly because @lru_cache is much easier are you serious? someone really asked you to "use array". Beyond stupid if they really did. > you can easily blow the stack for real production grade implementations using recursion recursive solution doesn't automatically mean using a the method stack. you can implement recursive solutions using explicit stack . > dynamic programming proper please. There is no "proper" dynamic programming. Please watch this MIT intro [VIDEO] .

RecommendsView on HN