# some important dynamic programming problems to practice

Dynamic programming is method of solving complex problem by breaking into subproblems. subproblems are solved and each solution is stored. List of some important dynamic programming problems to practice.

*some important dynamic programming problems to practice*

*Longest Common Subsequence. ( http://wikistack.com/longest-common-substring-problem/ )**Longest increasing subsequence.**coin exchange problem.**Longest palindromic subsequence. ( http://wikistack.com/longest-palindromic-substring/ )**Subset sum problem.**Given an array containing both positive and negative integers, find the contiguous array with the maximum sum.**Edit Distance find minimum number of edits (operations) required to transform one string into another.**maximum submatrix sum problem (http://wikistack.com/maximum-submatrix-sum-problem/)*

*traveling salesman problem dynamic programming ( http://wikistack.com/traveling-salesman-problem-dynamic-programming/)**All pair shortest path floyd warshall algorithm (http://wikistack.com/all-pair-shortest-path-floyd-warshall-algorithm/)**Knapsack Problem solution using dynamic programming.**Maximum size square sub-matrix with all 1s. (http://wikistack.com/maximum-size-square-sub-matrix-problem/)*

*Balanced Partition. You have a set of n integers each in the range 0 … K. Partition these integers into two subsets such that you minimize |S1 – S2|, where S1 and S2 denote the sums of the elements in each of the two subsets.**Given a triangle, find the minimum path sum from top to bottom. ( http://www.crazyforcode.com/triangle-find-minimum-path-sum-top-bottom/ )*

*Given an array find minimum number of moves to reach at end pf array. ( http://www.geeksforgeeks.org/minimum-number-of-jumps-to-reach-end-of-a-given-array/ )**Solution using dynamic programming of factorial of a positive integer. This is the one of the problem every beginner developer should try.*

Ref:

## Leave a Reply