当前位置: 首页剑指offer刷题第七期问题详情 【动态规划专题】LeetCode 322. 零钱兑换 本问题对应课程链接:剑指offer刷题第七期 要求: 1、请打卡你的解题代码,如果能简单说一下思路则简单说一下思路。 2、给出你代码所用的时间复杂度和空间复杂度
共以下 3 个回答
解题思路
– dp[i]表示金额为amount的最少组合次数
– dp[i]和dp[i-coins]的关系,主要是看coins里面有哪些硬币。取最小的+1即可。
– 比如conins的范围是[2,3,5]
– 那么dp[i] 就是 Math.min(dp[i-2],dp[i-3],dp[i-5])+1
【题解1】没参考题解的思路,时间复杂度是O(m*n)
题解2
时间复杂度O(N∗M),空间复杂度O(N)。
思路:递归+记忆化