Loading

动态规划

最近刷了刷动态规划的题,感觉有点套路的意思,我整理一下

从代码随想录中进行整理

20221201135959

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])

求组合数还是排列数(完全背包问题会遇到)、

组合数:横向遍历

排列数:纵向遍历

posted @ 2022-12-01 14:08  要努力哇  阅读(35)  评论(0)    收藏  举报