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];
        }
    }
相关推荐
旺仔老馒头.16 分钟前
【数据结构与算法】手撕排序算法(二)
c语言·数据结构·算法·排序算法
好学且牛逼的马28 分钟前
【Hot100 | 2 LeetCode49 字母异位词分组问题】
算法
2301_7951672038 分钟前
Rust 在内存安全方面的设计方案的核心思想是“共享不可变,可变不共享”
算法·安全·rust
czhc11400756631 小时前
Java117 最长公共前缀
java·数据结构·算法
java 乐山1 小时前
蓝牙网关(备份)
linux·网络·算法
云泽8081 小时前
快速排序算法详解:hoare、挖坑法、lomuto前后指针与非递归实现
算法·排序算法
数字化脑洞实验室1 小时前
智能决策算法的核心原理是什么?
人工智能·算法·机器学习
流烟默1 小时前
机器学习中拟合、欠拟合、过拟合是什么
人工智能·算法·机器学习
Brianna Home1 小时前
现代C++:从性能泥潭到AI基石
开发语言·c++·算法
再卷也是菜1 小时前
算法基础篇(10)递归型枚举与回溯剪枝
算法·深度优先·剪枝