9动态规划
1.背包问题 音响 3000元 4斤 笔记本电脑 2000元 3斤 吉他 1500元 1斤 1.简单算法 最简单的算法:尝试各种可能的商品组合,并找出价值最高的组合。 缺点:速度非常慢。3种商品需要计算8种组合;4件商品是,需要计算16中组合。每增加一种商品,需要计算的集合数将翻倍。这种算法的运行时间为O(2 n ) 组合1 组合2 组合3 组合4 无 吉他 音响 笔记本电脑 0 1500 3000 2000 组合5 组合6 组合7 组合8 吉他和音响 吉他和笔记本电脑 音响和笔记本电脑 吉他、音响和笔记本电脑 装不下 3500 装不下 装不下 近似算法可以得到近似解,但不一定是最优解。 2. 动态规划 使用动态规划可以得到最优解。 背包的承重为1斤 背包的承重为2斤 背包的承重为3斤 背包的承重为4斤 吉他 1 1500 可以放入背包 G 1500 可以放入背包 G 1500 可以放入背包 G 1500 可以放入背包 G 1500 音响 4 3000 G 1500 G 1500 G 1500 S 3000 笔记本电脑 3 2000 G 1500 G 1500 C 2000 3000 vs (2000+1500) -> 3500 计算公式: cell[i][j] = cell[i-1][j] vs {当前商品的价值 + 剩余空间的价值 = 当前商品的价值+cell[i-1][j