Minimum Coin Change
Explore how to solve the minimum coin change problem by applying dynamic programming methods. Understand both top-down and bottom-up approaches within the unbounded knapsack pattern to optimize recursive solutions and improve time and space efficiency.
Statement
You’re given an integer total and a list of integers called coins. The integers inside the coins represent the coin denominations, and total is the total amount of money.
You have to return the minimum number of coins that can make up the total amount by using any combination of the available coins. If the amount can’t be made up, return -1. If the total amount is 0, return 0.
Note: You may assume that we have an infinite number of each kind of coin.
Let’s say, we have coins (1, 2, 3) and want to make a total amount of . The minimum number of coins required to make this total is coins, such that (2 + 3 = 5).
Constraints:
-
coins.length -
coins[i]...