动态规划
最近刷了刷动态规划的题,感觉有点套路的意思,我整理一下
从代码随想录中进行整理

01背包问题
就是商品只有放或者不放两种情况
完全背包问题
就是商品有无限多个可以放
多重背包问题
就是商品数量可以是多个,但不是无限多
这种题直接按照物品数量,将其转换为0,1背包问题
按照递推公式分类(所有背包问题都会用到)
背包最多装多少
dp[j] = max(dp[j], dp[j - nums[i]] + nums[i])
背包有几种装法
dp[j] = dp[j] + dp[j - nums[i]]
背包最小数目
dp[j] = min(dp[j - coins[i]] + 1, dp[j])
求组合数还是排列数(完全背包问题会遇到)、
组合数:横向遍历
排列数:纵向遍历

浙公网安备 33010602011771号