背包问题
文章平均质量分 65
AmazingJadeWu
Github:https://github.com/amazingWu
开源中国:https://git.oschina.net/WU_QI
展开
-
完全背包
讲解及代码实现 完全背包是在N种物品中选取若干件(同一种物品可多次选取)放在空间为V的背包里,每种物品的体积为C1,C2,…,Cn,与之相对应的价值为W1,W2,…,Wn.求解怎么装物品可使背包里物品总价值最大。 动态规划(DP): 1) 子问题定义:F[i][j]表示前i种物品中选取若干件物品放入剩余空间为j的背包中所能得到的最大价值。 2) 根据第i种物品放多少件进行决策。原创 2017-05-22 10:55:02 · 613 阅读 · 0 评论 -
多重背包
题目:有N种物品和一个容量为V的背包。第i种物品最多有n[i]件可用,每件费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。基本算法这题目和完全背包问题很类似。基本的方程只需将完全背包问题的方程略微一改即可,因为对于第i种物品有n[i]+1种策略:取0件,取1件……取n[i]件。令f[i][v]表示前i种物品恰放入一个容量为v的背包的最大权原创 2017-05-22 14:08:14 · 1388 阅读 · 0 评论 -
'动态规划:word-break'
题目描述Given a string s and a dictionary of words dict, determine if s can be segmented into a space-separated sequence of one or more dictionary words. For example, given s =”leetcode”, dict =[“leet”,原创 2017-06-09 11:42:55 · 284 阅读 · 0 评论