目录
2.8动态规划算法实现------约束条件下的最值问题
2.8.1 0-1背包问题
2.8.1.1问题
2.8.1.2确定动态规则(DP、状态转移方程)、初始值
(1)直接相关状态
(2)当前状态值的确定
(3)动态规则(DP、状态转移方程)
(4)初始值
2.8.1.3动态规划算法代码实现
(1)完整代码
(2)程序速度优化
(3)递归求背包能装下的物品的最大总价值
2.8动态规划算法实现------约束条件下的最值问题
在2.7节中我们讲到约束条件下的排列组合问题,其中也提到最值,但那里更侧重解决排列组合问题,这里我们主要探讨在约束条件下的最值问题,其中也可能会求解这种最值下的组合。下面以背包问题为例讲述动态规划算法在约束条件下的最值问题中的应用。
2.8.1 0-1背包问题
2.8.1.1问题
0-1背包(zero-one backpack):有不同种类的物品,每种物品对应有重量和价格,且每种物品只有一个,也只能取一次。在背包最大承受重量下,我