DSA-in-December

✹ Dynamic Programming Level-2 ✹

📌 Dynamic Programming is a technique in computer programming that helps to efficiently solve a class of problems that have overlapping subproblems and optimal substructure properties. If any problem can be divided into subproblems, which in turn are divided into smaller subproblems, and if there are overlapping among these subproblems, then the solutions to these subproblems can be saved for future reference. In this way, the efficiency of the CPU can be enhanced. This method of solving a solution is referred to as dynamic programming. Such problems involve repeatedly calculating the value of the same subproblems to find the optimum solution.

✏ 𝗙𝗌𝗿 𝗯𝗲𝘁𝘁𝗲𝗿 𝘂𝗻𝗱𝗲𝗿𝘀𝘁𝗮𝗻𝗱𝗶𝗻𝗎 𝗿𝗲𝗳𝗲𝗿 𝗳𝗌𝗹𝗹𝗌𝘄𝗶𝗻𝗎 𝗮𝗿𝘁𝗶𝗰𝗹𝗲𝘀 ;

  1. https://www.geeksforgeeks.org/dynamic-programming/
  2. https://www.cprogramming.com/tutorial/computersciencetheory/dp.html
  3. https://www.programiz.com/dsa/dynamic-programming
  4. https://www.javatpoint.com/dynamic-programming
  5. https://stackabuse.com/dynamic-programming-in-java/
  6. https://medium.com/geekculture/demystifying-dynamic-programming-with-java-part-i-9e501d94bfe6

🌟DP advanced concepts -learn advance and brush your DP basics here - https://www.geeksforgeeks.org/dynamic-programming/

📜 𝗧𝘂𝘁𝗌𝗿𝗶𝗮𝗹 𝗟𝗶𝗻𝗞𝘀;

  1. https://youtube.com/playlist?list=PLgUwDviBIf0qUlt5H_kiKYaNSqJ81PMMY 2.https://youtu.be/sPeKpctCL-c
  2. https://youtu.be/sPeKpctCL-c
  3. https://youtu.be/5dRGRueKU3M
  4. https://youtu.be/-NTaXJ7BBXs

👚‍💻 𝗀𝘂𝗲𝘀𝘁𝗶𝗌𝗻𝗶𝗻𝗎 𝗥𝗌𝘂𝗻𝗱: 👇

  1. https://leetcode.com/problems/longest-palindromic-substring/
  2. https://leetcode.com/problems/unique-paths/
  3. https://leetcode.com/problems/interleaving-string/
  4. https://leetcode.com/problems/pascals-triangle/
  5. https://leetcode.com/problems/trapping-rain-water/
  6. https://leetcode.com/problems/regular-expression-matching/