背包问题的这种变体需要最小重量。目标是最大限度地降低成本,同时至少实现最小的重量。
例如,我们有 6 件物品,有重量{1, 1, 1, 5, 13, 3}和成本{1, 1, 1, 5, 10, 12}。假设最小重量为 15。
{1, 1, 1, 5, 13, 3}
{1, 1, 1, 5, 10, 12}
最佳解决方案是{1, 2, 5}总重量为 15 且成本为 12 的物品。
{1, 2, 5}
我应该如何尽可能有效地实现这个算法?贪婪的选择不起作用,那么我是否应该修改原始的动态规划解决方案来适应这个问题?如果是这样,怎么办?
如果重要的话,我打算用 Java 来写这个。
java knapsack-problem dynamic-programming
dynamic-programming ×1
java ×1
knapsack-problem ×1