Recursion 查找和优化的递归算法(有点像背包)

Recursion 查找和优化的递归算法(有点像背包),recursion,dynamic-programming,knapsack-problem,Recursion,Dynamic Programming,Knapsack Problem,我应该写一个递归算法,然后使用动态规划来改进它,得到W,总重量,并计算填充袋子的最佳方式,但这里是与背包的区别,当只有3个可能的重量时 - weight: 4 price: $1 - weight: 3 price: $0.7 - weight: 1 price: $0.2 你会朝哪个方向走?我不确定如何考虑贪婪算法,因为如果W=6,那么4+1+1和3+3的值都将达到1.4美元。只是澄清一下-您需要最大化W,限制为6,同时最小化总价格?还是在最大

我应该写一个递归算法,然后使用动态规划来改进它,得到W,总重量,并计算填充袋子的最佳方式,但这里是与背包的区别,当只有3个可能的重量时

 - weight: 4        price: $1
 - weight: 3        price: $0.7
 - weight: 1        price: $0.2

你会朝哪个方向走?我不确定如何考虑贪婪算法,因为如果W=6,那么4+1+1和3+3的值都将达到1.4美元。

只是澄清一下-您需要最大化W,限制为6,同时最小化总价格?还是在最大化价格的同时?如果两个解决方案给出相同的值,您应该查看它们是否有一个子解决方案工作得更好,例如将一个3更改为3个1。大量的在线帮助,如果你看。。。最后,如果有两个解决方案符合标准,那么确实有两个解决方案。难道没有一个数字最少的或类似的东西来区分它们吗?@Floris,我只需要在一个值的问题上找到最佳负载,我不关心袋子中元素的数量。我应该寻找哪种背包变体?我有一个有限的重量数,但所有重量的总和不能超过W。不知道为什么你认为只有三个重量使这与背包问题不同。。。我假设每种重量都不止一种——换句话说,只要物品的总重量不超过W,物品的数量就没有限制。在我看来,中的解决方案应该适用于您。如果没有,请解释为什么没有。