
Learn dynamic programming in 30 minutes - ourarash
https://youtu.be/PY9sl9QZqSs
======
kccqzy
My personal advice for anyone wishing to master dynamic programming: learn
about recurrence relations first. When I first started learning dynamic
programming I didn't know about recurrence relations. It was very frustrating
to somehow "sense" that a problem involves dynamic programming but can't
describe it properly; that basically means I'm unable to apply dynamic
programming principles to any new problems other than a few studied and
memorized examples like LCS.

Later on after I learned recurrence relations I relearned dynamic programming
and it's a breeze. To be sure you just need to structure your mind to think
about these problems in terms of recurrence relations. You don't need to go as
deep as I did learning about generating functions (though they are interesting
and useful on their own).

Also I don't believe in learning it in 30 minutes. You can get an overview in
30 minutes, much like you can finish a chapter or two in a calculus textbook
in 30 minutes. But you won't really learn it until you do the exercises and
practice problems.

