零钱兑换-动态规划详解(自下而上)

在这里插入图片描述

def coinChange(self, coins: List[int], amount: int) -> int:
        df = [float('inf')]*(amount+1)
        df[0] = 0
        for coin in coins:
            for n in range(coin,amount+1): 
                df[n] = min(df[n],df[n-coin]+1)
        return df[amount] if df[amount] != float('inf') else -1

核心思想

在这里插入图片描述
在这里插入图片描述

心得

当初看了很多关于动态规划的解释,看得一头雾水,直到看到上面两个图已经代码, 就理解了。

原地址

https://leetcode-cn.com/problems/coin-change/

发布了72 篇原创文章 · 获赞 3 · 访问量 889

猜你喜欢

转载自blog.csdn.net/weixin_39025679/article/details/104739631