Day46.算法训练

518. 零钱兑换 II

java 复制代码
class Solution {
    public int change(int amount, int[] coins) {
        int dp[] = new int[amount + 1];
        dp[0] = 1;
        // 遍历物品
        for (int i = 0; i < coins.length; i++) {

            // 遍历背包 从小到大
            for (int j = coins[i]; j <= amount; j++) {
                dp[j] += dp[j - coins[i]];    
            }

        }
        return dp[amount];
    }
}

377. 组合总和 Ⅳ

java 复制代码
    class Solution {
        public int combinationSum4(int[] nums, int target) {

            int dp[] = new int[target + 1];
            dp[0] = 1;

            // 遍历背包 从小到大
            for (int j = 1; j <= target; j++) {

                // 遍历物品
                for (int i = 0; i < nums.length; i++) {
                    if (j >= nums[i]) {
                        dp[j] += dp[j - nums[i]];
                    }
                }

            }
            return dp[target];
        }
    }
相关推荐
Theodore_102217 小时前
深度学习(12)正则化线性回归中的偏差与方差调试
人工智能·深度学习·算法·机器学习·线性回归
m0_5698814718 小时前
跨语言调用C++接口
开发语言·c++·算法
老鼠只爱大米18 小时前
LeetCode经典算法面试题 #295:数据流的中位数(双堆法、有序列表、平衡树等多种实现方案详解)
算法·leetcode·优先队列··数据流·中位数·java 面试题
x_xbx18 小时前
LeetCode:215. 数组中的第K个最大元素
数据结构·算法·leetcode
黎阳之光18 小时前
AI数智筑防线 绿色科技启新篇——黎阳之光硬核技术赋能生态安全双升级
大数据·人工智能·算法·安全·数字孪生
2501_9249526918 小时前
C++中的过滤器模式
开发语言·c++·算法
2401_8732046518 小时前
C++中的组合模式实战
开发语言·c++·算法
西野.xuan18 小时前
内存布局(堆vs栈)一篇详解!!
java·数据结构·算法
2401_8318249618 小时前
高性能压缩库实现
开发语言·c++·算法
2401_8747325319 小时前
C++中的策略模式进阶
开发语言·c++·算法