完全背包问题和01背包问题不同的地方就是完全背包问题中每个物品能选无数次,而01背包问题中每个物品最多只能选择一次
如果你还没有学过01背包,请先看这篇博客学习01背包:https://blog.****.net/qq_67733273/article/details/143066295
其实代码其实也很简单,我们只需要在01背包问题代码的基础上,把遍历背包容量改为正序遍历这种方式即可
这是因为我们每个物品能够被选无数次,我们在遍历容量过程中需要让前面遍历容量的结果影响到当前容量的结果,也就是我们可以基于选择过某个物品后获得的某个容量下的最大值可以用来求更大背包容量下也选择该物品的最大值,即可以选择已经选择过当前物品的容量的最大价值来尝试刷新当前容量下的最大价值