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

一个很有趣的个人博客,不信你来撩 fangzengye.com



在这里插入图片描述

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/

posted @ 2020-03-08 20:42  开源的Boy  阅读(149)  评论(0)    收藏  举报