Abstract.
The contribution of this paper is twofold: At first an improved dynamic programming algorithm for the bounded knapsack problem is given. It decreases the running time for an instance with n items and capacity c from \(O(nc\log c)\) to \(O(nc)\), which is the same pseudopolynomial complexity as usually given for the 0--1 knapsack problem. In the second part a general approach based on dynamic programming is presented to reduce the storage requirements for combinatorial optimization problems where it is computationally more expensive to compute the explicit solution structure than the optimal solution value. Among other applications of this scheme it is shown that the 0--1 knapsack problem as well as the bounded knapsack problem can be solved in \(O(nc)\) time and \(O(n+c)\) space.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Author information
Authors and Affiliations
Additional information
Received: October 15, 1998; revised March 10, 1999
Rights and permissions
About this article
Cite this article
Pferschy, U. Dynamic Programming Revisited: Improving Knapsack Algorithms. Computing 63, 419–430 (1999). https://doi.org/10.1007/s006070050042
Published:
Issue Date:
DOI: https://doi.org/10.1007/s006070050042