01背包:
一个背包(容器),它的体积(容量)为V,现在有N种物品(每个物品只有一个),每个物品的价值W[i]和占用空间C[i]都会由输入给出,现在问这个背包最多能携带总价值多少的物品?
完全背包:
完全背包问题和基本的 0-1 背包问题非常类似,区别就是在完全背包问题中,每种物品有无限件。
多重背包:
相应于完全背包问题,多重背包问题的每个物品多了数目限制,因此初始化和递推公式都需要修改。
混合背包:
有的物品只可以取一次或不取(基本的0-1背包),有的物品可以取无限次(完全背包),有的物品可以取的次数有一个上限(多重背包),就是混合背包问题。
二维背包:
二维费用的背包问题是指:对于每件物品,具有两种不同的费用;即,选择一件物品必须同时付出这两种代价。问怎样选择物品可以得到最大的价值。
分组背包:
这n个物品被划分为若干组,每组中的物品互相冲突,最多选一件放入背包。求将哪些物品装入背包,可以使这些物品的重量总和不超过M,且价值总和最大。
有依赖的背包:
有依赖的背包问题是基本的0-1背包的变形。与基本的0-1背包不同的是,物品之间存在某种“依赖”的关系。也就是说,如果物品i依赖于物品j,则表示如果要选物品i,则必须先选物品j。