Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/skm2000/Dynamic-Programming
A DP a day keeps the bug away.
https://github.com/skm2000/Dynamic-Programming
Last synced: 7 days ago
JSON representation
A DP a day keeps the bug away.
- Host: GitHub
- URL: https://github.com/skm2000/Dynamic-Programming
- Owner: skm2000
- Created: 2020-03-25T07:34:18.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-08-23T10:06:45.000Z (about 2 years ago)
- Last Synced: 2024-08-02T17:32:12.676Z (3 months ago)
- Language: C++
- Homepage:
- Size: 204 KB
- Stars: 203
- Watchers: 10
- Forks: 61
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Dynamic-Programming
A DP a day keeps the bug away.**Cointains Dp Problems**
**Parent Problem** : [*Kadane's Algorithm*](/Kadane.cpp)
1) [Best Time to Buy and sell Stock(Leetcode)](/Best_Time_To_Buy_And_Sell_Stock_.cpp)
2) [Circular Kadane](/Circular_Kadene.cpp)**Parent Problem** : *Fibonacci*.
SubProblems :
1) [Reach a given Score](/Reach_a_given_score.cpp).
2) [Count number of hops](/Count_Number_of_hops.cpp).
3) [Count ways to reach n-th stair](/Count_ways_to_N'th_Stair.cpp).
4) [Count Number of Ways to Tile](/No_Of_Ways_To_Tile.cpp).
5) [Tiling Problem-General](/Tiling_Problem.cpp).
6) [Maximum Sum Dividing](/Maximum_Sum_Dividing_Recurssive.cpp).
7) [Friends Pairing Problem](/Friends_Pairing_Problem.cpp)
8) [Maximize the Cutting](/Maximize_the_cutting.cpp)
9) [Number of Ways to Decode a String](/Number_of_ways_to_decode_a_string.cpp)**Parent Problem** : [*0/1 KnapSack Problem*](/Knapsack_0_1.cpp)
SubProblems :
1) [SubSet Sum](/SubsetSum.cpp).
2) [Equal Sum Partition](/Equal_Sum_Partition.cpp).
3) [Count of SubSet Sum]().
4) [Minimum SubSet Sum Difference](/Minimum_Subset_Sum_Difference.cpp).
5) [Count SubSets of given Sum](/Count_Subsets_of_given_Sum.cpp).**Parent Problem** : [*Unbounded KnapSack*](/Unbounded_Knapsack.cpp)
SubProblems :
1) [Coin Changing Problem 1(No of ways)](/Coin_Changing_1.cpp).
2) [Coin Changing Problem 2(Minimum no of coins)](/Coin_Changing_2.cpp).
3) [Rod Cutting Problem](/Rod_Cutting.cpp).
4) [Minimum Cost to Fill Bag](/Minm_Cost_To_Fill_Bag.cpp).**Parent Problem** : [*Longest Common SubSequence*](/Longest_Common_Subsequence.cpp)
SubProblems :
1) [Longest Common SubString](/Longest_Common_Substring.cpp).
2) [Shortest Common SuperSequence](/Shortest_Common_Supersequence.cpp).
3) [Print LCS](/Print_Longest_Common_Subsequence.cpp).
4) [Minimum Insertions And Deletion to Convert a String](/Minm_Insertion_Deletion_Convert.cpp).
5) [Longest Repeating SubSequence](/Longest_Repeating_Subsequence.cpp).
6) [Longest Pallindromic SubSequence](/Longest_Pallindromic_Subsequence.cpp).
7) [Edit Distance](/Edit_Distance.cpp).
8) [Count All Pallindromic SubSequence](/Count_All_Pallindromic_Subsequence.cpp).
9) [Minimum Deletion to make string pallindrome](/Minm_Deletion_To_Make_Pallindrome.cpp).
10) [Count Distinct Occcurences](/Distinct_Occurences.cpp).
11) [Maximum length of pairs](/Maximum_length_of_pairs.cpp).
12) [Minimum Ascii Sum deletion To Make two Strings equal](/Minimum_Ascii_Sum_deletion_To_Make_two_Strings_equal.cpp).
13) [Maximum Dot Product of Subsequences(Leetcode)](/Maximum_Dot_Product_Subsequence.cpp).
14) [Uncrossed Lines(LeetCode)](/Uncrossed_Lines.cpp).**Parent Problem** : [*Longest Increasing Subsequence*](/Longest_Increasing_Subsequence.cpp)
1) [Russian Doll Envelope(Leetcode)](/Russian_Doll_Envelope.cpp).
2) [Longest Decreasing SubSequence](/Longest_Decreasing_Subsequence.cpp).
3) [Maximum Sum Increasing SubSequence](/Maximum_Sum_Increasing_Subsequence.cpp).
4) [Maximum Sum Decreasing SubSequence](/Maximum_Sum_Decreasing_Subsequence.cpp).
5) [Maximum Product Increasing Subsequence](/Maximum_Product_Increasing_Subsequence.cpp).
6) [Minimum Jumps to reach end](/Minimum_Jumps_To_Reach_End.cpp).
7) [Box Stacking Problem](/Box_Stacking_Problem.cpp).
8) [Longest Bitonic Sequence](/BitonicSequence.cpp).
9) [Longest Alternating Subsequence](/longest_alternating_subsequence.cpp)
10) [Count All Increasing Subsequences](/Count_All_Increasing_Subsequences.cpp).**Parent Problem** : *DP + Greedy*
1) [Jump Game-2(Leetcode)](/jump_game_2..cpp).
2) [Video Stiching(Leetcode)](/video_stiching.cpp).
3) [Minm number of taps to open water](/minm_number_of_taps_to_open_water.cpp).**Parent Problem** : *Game(DP) + minimax*
1) [Nim Game](/nim_game.cpp).
2) [Flip Game-1](/flip_game.cpp).
3) [Flip Game-2](/flip_game2.cpp).
4) [Get Minimum Squares](/Get_Minimum_Squares.cpp).
5) [Optimal Strategy to play a Game](/Optimal_Strategy_To_Play_A_Game.cpp).
6) [Stone Game-3](/Last_Stone_3.cpp)
7) [Jump Game-3(Leetcode)](/Jump_Game_3.cpp)
8) [Jump Game-5(Leetcode)](/Jump_Game_5.cpp)**Parent Problem** : *Dp on Grids*
1) [Maximum Size Submatrix Square](/Maximum_Size_Submatrix_Square.cpp).
2) [Maximum Path Sum in Triangle](/Max_Path_Sum_in_Triangle.cpp).
3) [Minimum Initial Points to Reach Destination](/Minimum_Initial_Points_To_Reach_Destinaion.cpp).
4) [GoldMine Problem](/GoldMine_Problem.cpp)
5) [Path in a Matrix](/Max_path_sum.cpp)
6) [Maximal Square(Leetcode)](/maximal_square.cpp)
7) [Count Submatrices with all ones(Leetcode)](/count_submatrices_with_all_ones.cpp)
8) [Maximum Sum Submatrix](/maximum_sum_submatrix.cpp)
9) [Unique Path-1](/unique_paths_1.cpp)
10) [Unique Path-2](/unique_paths_2.cpp)**Parent Problem** : [*Matrix Chain Multiplication*](/Matrix_Chain_Multiplication.cpp)
**Parent Problem** : [*Count Distinct SubSequences*](/Count_Distinct_Subsequences.cpp)
**Parent Problem** : *Dp on Trees*
1) [Max Path Sum](/Max_path_sum.cpp)
2) [Maximum Path Sum in a Tree from Any node to any other node](/Maximum_Path_Sum_in_Binary_tree.cpp)
3) [Diameter of a Binary Tree](/Diameter_Of_Binary_Tree.cpp)**Others**
1) [Longest Consequetive Subsequences](/Longest_Consequetive_Subsequence.cpp).
2) [Zeroes And Ones](/zerosAndOnes.cpp)
3) [Longest Pallidromic SubString](/Longest_Pallindromic_Substring.cpp).
4) [Count Pallindromic substring of string](/Count_Pallindromic_SubString_Of_String_gfg.cpp)
5) [Product of array except self](/Count_Pallindromic_SubString_Of_String_gfg.cpp)Happy Coding!!