In this course, you will learn how to solve several problems using Dynamic Programming. We will discuss several 1 dimensional and 2 dimensional dynamic programming problems and show you how to derive the recurrence relation, write a recursive solution to it, then write a dynamic programming solution to the problem and code it up in a few minutes! We will cover problems such as:
2.Buying and Selling Stock
4.Longest Common Substring
5.Longest Common Subsequence
By the end of this course, you should be fairly confident to tackle dynamic programming problems and to begin your journey in learning more Dynamic programming problems and solutions.
- You should have a slight background on recurrences
- It is a plus if you are some what familiar with a modern programming language (C++/Java/Python).
- How to Solve a problem recursively
- How to come up with a dynamic programming solution
- How to code a dynamic programming solution
- How to solve frequent 1D and 2D dynamic programming problems
I am currently a Senior studying a Double Major in Mathematics and Computer Science, which are my main two passions. I have so many passions and interests. They include but are not limited to Competitive programming, Math Proofs, video game programming, and machine learning just to name a few! However, I would have to say that my main passion is teaching. I really enjoy teaching to everyone, and I really enjoy when my students get that "Aha!" moment.