Feared With Dynamic Programming?
This Is How You Should Approach
Jumping into dynamic programming and solving complex problems requires knowing some methods or tricks. One can easily be frustrated if not able to find the solution faster.
But, what if I tell you that you can do any dynamic programming questions without taking the help of others?
So basically to do dynamic programming, backtracking, or divide and conquer type of problem. First, you need to learn recursion. If you are good in recursion then 80% of problems are done. Because these are only the optimizations of recursive solutions.
And believe me, many of us skip recursion but the true part is recursion is important and it is everywhere. In Array, linked list, stack, trees, graphs, etc. So without knowing this and going into an interview is a blunder.
There are two approaches to solving recursive problems:-
- By Building a Recursive Tree
- Hypothesis — Induction — Base Condition
Therefore, I have prepared a detailed PDF with my notes that I always used to solve recursive problems. In this PDF I have shared how you can think and solve with these 2 approaches.
After going through this pdf you will easily be able to solve complex recursive problems.
Thanks for Reading
Akash Shukla 😊