
背包问题
有n个物品,它们有各自的体积和价值,现有给定容量的背包,如何让背包里装入的物品具有最大的价值总和?
这就是典型的背包问题(又称为0-1背包问题),也是具体的、没有经过任何延伸的背包问题模型。
背包问题的传统求解方法较为复杂,现定义有一个可以载重为8kg的背包,另外还有4个物品,物品的价值和质量数据如下表,不考虑背包的容量。4个物品的总质量大于8kg,所以要想在有限载重的背包携带更多质量的物品,就要有一套算法进行取舍,最终寻找到最优解。
![\begin{table}[!h!tbp]
\caption{各个物品的参数}\label{tableproblem1}
\centering
\begin{tabular}{ccccc}
\hline
物品序号i & 1 & 2 & 3 & 4\
\hline
质量w(kg) & 2 & 3 & 4 & 5 \
价值v(元) & 3 & 4 & 5 & 6 \
\hline
\end{tabular}
\end{table}](https://i-blog.csdnimg.cn/direct/a1c4ee65b5084563bb2ea56b0fce83d7.png)
传统的背包问题解法是根据动态规划解题步骤(问题抽象化、建立模型、寻找约束条件、判断是否满足最优性原理、找大问题与小问题的递