如果我有一个重量限制为W的背包,物品限制K和我有N个项目,N> = k
我知道如何通过三维记忆数组m [N] [W] [K](N个要考虑的项目,W权重,K项目可供选择)来最大化它,从而在O中进行(N * W * K)复杂度,但是在二维记忆阵列中有更快的速度,并且实现更快的复杂性,例如O(N * W)复杂度吗?
答案 0 :(得分:1)
您正在使用的记忆不正确:“m [N] [W] [K](N个要考虑的项目,W权重,K项目可供选择)”。它不会捕获哪些项目可供选择的完整信息与可供选择的项目数量。
您要解决的问题是Multi dimensional knapsack,这比经典问题更复杂。