Hy all, :) I am struggling to learn basic dp for a while. Its pretty hard for me to understand rcursion. As we all know recursion is the mother of dynamic programming. So, It would be great if you suggest me some good resources for beginner where you learned firstly dp or suggest some classical dp problem with solution so that I will understand the concept or suggest any other way :) Thanks a lot :)

All of the guys are continuously giving down voted. I dont know why. People can think about why I cant googled instead of posting here but I always got something special from this community's member. Still I am hoping someone will help me. Sorry for my poor English. :) Thanks. :)

LooOoooooOLooOooOoOOLoOoOoOoOoooLoOoooOooL. LMAO. ROFL. Why are you getting downvoted? Well. The reason is simple. The question that you are answering can easily be answered by a Google search. And you are pretty damn lazy to search it for yourself.

Are you expecting a magic wand or something? Do a google search and you'll easily find the answers.

(0/1 Knapsack Problem Top Down Dynamic Programming) — Recursion

https://www.youtube.com/watch?v=149WSzQ4E1g

0/1 Knapsack Problem Dynamic Programming — Bottom Up/Table

https://www.youtube.com/watch?v=8LusJS5-AGo

Some of the typical dp problems to start with are the maximum subarray sum problem, the longest common subsequence problem and the problem where you have a grid with numbers and you want to from the top left corner to the bottom right corner with min or max cost where you are only allowed to travel right or down. Regarding recursion I found it simpler to learn bottom up dp first and learn dp with recursion and memoisation later.

Try Hackerrank.com dynamic programming challenges. They start from basics.

I recently made a list Check it out here