代码随想录算法训练营第43天 | 977.有序数组的平方 、27. 移除元素

完全背包
视频讲解:https://www.bilibili.com/video/BV1uK411o7c9
https://programmercarl.com/背包问题理论基础完全背包.html

主要是理解完全背包
  1. 零钱兑换 II
    视频讲解:https://www.bilibili.com/video/BV1KM411k75j
    https://programmercarl.com/0518.零钱兑换II.html
/**
 * @param {number} amount
 * @param {number[]} coins
 * @return {number}
 */
var change = function(amount, coins) {
    let len = coins.length;
    const dp = new Array(amount+1).fill(0);
    dp[0] = 1;
    for (i=0;i<len;i++) {
        for (let j=coins[i];j<=amount;j++) {
            dp[j] += dp[j- coins[i]];
        }
    }
    return dp[amount];
};
  1. 组合总和 Ⅳ
    视频讲解:https://www.bilibili.com/video/BV1V14y1n7B6
    https://programmercarl.com/0377.组合总和Ⅳ.html
/**
 * @param {number[]} nums
 * @param {number} target
 * @return {number}
 */
var combinationSum4 = function(nums, target) {
    const dp = new Array(target+1).fill(0);
    dp[0] = 1;
    for (let j=0;j<=target;j++) {
        for (i=0;i<nums.length;i++) {
            if (j>=nums[i]) {
                dp[j]+=dp[j-nums[i]];
            }
            
        }
    }
    return dp[target];
};
  1. 爬楼梯 (进阶)

这道题目 爬楼梯之前我们做过,这次再用完全背包的思路来分析一遍

https://programmercarl.com/0070.爬楼梯完全背包版本.html

posted @ 2024-06-20 00:00  YuanYF6  阅读(1)  评论(0编辑  收藏  举报