动态规划之背包问题
背包问题
1. 01背包问题
有 N件物品和一个容量是 V的背包。每件物品只能使用一次。第i件物品的体积是
求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。
2. 完全背包问题
有 N种物品和一个容量是 V的背包,每种物品都有无限件可用。第i种物品的体积是
求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。
3. 多重背包问题
有 N种物品和一个容量是V的背包。第i种物品最多有
求解将哪些物品装入背包,可使物品体积总和不超过背包容量,且价值总和最大。
4. 混合背包问题
有 N种物品和一个容量是 V的背包。
物品一共有三类:
第一类物品只能用1次(01背包);
第二类物品可以用无限次(完全背包);
第三类物品最多只能用
每种体积是
求解将哪些物品装入背包,可使物品体积总和不超过背包容量,且价值总和最大。
5. 二维费用的背包问题
有 N件物品和一个容量是V的背包,背包能承受的最大重量是 M。每件物品只能用一次。体积是
求解将哪些物品装入背包,可使物品总体积不超过背包容量,总重量不超过背包可承受的最大重量,且价值总和最大。
6. 分组背包问题
有N组物品和一个容量是V的背包。每组物品有若干个,同一组内的物品最多只能选一个。每件物品的体积是
求解将哪些物品装入背包,可使物品总体积不超过背包容量,且总价值最大。
7. 有依赖的背包问题
有 N个物品和一个容量是 V的背包。物品之间具有依赖关系,且依赖关系组成一棵树的形状。如果选择一个物品,则必须选择它的父节点。
如下图所示:
如果选择物品5,则必须选择物品1和2。这是因为2是5的父节点,1是2的父节点。
每件物品的编号是i,体积是
求解将哪些物品装入背包,可使物品总体积不超过背包容量,且总价值最大。
8. 背包问题求方案数
有N件物品和一个容量是 V的背包。每件物品只能使用一次。第i件物品的体积是
求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。
求最优选法的方案数
9. 求背包问题的方案
有N件物品和一个容量是 V的背包。每件物品只能使用一次。第i件物品的体积是
求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。
输出 字典序最小的方案。这里的字典序是指:所选物品的编号所构成的序列。物品的编号范围是 1…N。
__EOF__

本文链接:https://www.cnblogs.com/zhiao/p/17231277.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效