How many structurally unique binary search trees(BSTs) are possible that store 'n' distinct values? This algorithm uses dynamic programming memoization approach to solve this problem. Here is a video that explains the algorithm with examples and animation.

*1*

Find total number of ways to make change using given set of coins - IDeserve

Find minimum edit distance between given two strings - IDeserve

Given a cost 2D matrix having a cost at each cell. Find the minimum cost it will take to reach cell (m, n) from top left corner cell (0, 0) if the only allowed directions to move from a cell are right, down and diagonally down. Java visualization is provided in algorithm visualization section. Java code is given in the code snippet section.

Given an infinite supply of coins of values: {C1, C2, ..., Cn} and a sum. Find minimum number of coins that can represent the sum. Java solution to find minimum number of coins using dynamic programming. Java visualization is provided in algorithm visualization section. Example 1:values: {2, 5, 3} sum = 5Then 5 can be represented as: 2 + 3 = 2 coins5 = 1 coin Therefore, minimum number of coins is 1.Example 2: values: {2, 5, 3}sum = 7 Then 7 can be represented as:2 + 2 + 3 = 3 coins 2…

Given an array of unordered positive and negative integers, find the maximum subarray sum in the array. This is solved using kadane's algorithm. Java solution is provided in code snippet section. Java visualization is provided in algorithm visualization section.

Given a dictionary of words and a string of characters, find if the string of characters can be broken into individual valid words from the dictionary. Java solution is provided in code snippet section. Java visualization is provided in algorithm visualization section.

Given an array of size n, find the longest bitonic subsequence in the array. A bitonic sequence a sequence which is first increasing and then decreasing. Java solution is provided in code snippet section. Java visualization is provided in algorithm visualization section.

Here is a video tutorial that explains 0-1 knapsack problem and its solution using examples and animations. We use Dynamic Programming approach to solve the problem - Given a set of items, each with weight and benefit, determine the items to include in a collection so that the total weight is less than or equal to a given weight limit and the total benefit is maximized.