https://github.com/harshit7962/dynamic_programming_for_beginners
https://github.com/harshit7962/dynamic_programming_for_beginners
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/harshit7962/dynamic_programming_for_beginners
- Owner: harshit7962
- Created: 2022-06-21T05:36:07.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-07-02T12:17:47.000Z (almost 3 years ago)
- Last Synced: 2025-02-09T04:36:33.243Z (3 months ago)
- Language: C++
- Size: 43 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Dynamic_Programming_For_Beginners
Dynamic Programming is a technique that helps to efficiently solve a class of problems that have overlapping subproblems and optimal structure property.
In layman terms, it is an optimization over plain recursion. The idea is to ruse the solution of subproblems when there are overlapping subproblems...There are two approaches of Dynamic Programming
1) Memoization (Top-Down Approach)
2) Tabulation (Bottom Up Approach)## Application of Dynamic Programming
1) Bellman Ford Algorithm
2) Floyd Warshall Algorithm
3) Diff Utility (Longest Common Subsequence)
4) Search Closest Words (Edit Distance)
5) Resource Allocation (0-1 Knapsack)