动态规划,0-1背包问题
题目
动态规划,0-1背包问题
在背包问题九讲中p01 01背包中有这样一段话:
一个常数优化
前面的伪代码中有 for v=V..1,可以将这个循环的下限进行改进.由于只需要最后f[v]的值,倒推前一个物品,其实只要知道f[v-w[n]]即可.以此类推,对以第j个背包,其实只需要知道到f[v-sum{w[j..n]}]即可,即代码中的 for i=1..N for v=V..0 可以改成 for i=1..n bound=max{V-sum{w[i..n]},c[i]} for v=V..bound 这对于V比较大时是有用的.
for i=1..n bound=max{V-sum{w[i..n]},c[i]} for v=V..bound 这个循环到底是怎么回事?请大牛们帮我讲解一下.
不要发代码啊.只要讲解一下就行.我不理解这个循环的运行.
答案
相当于一个滚动数组的处理for i=1..n bound=max{V-sum{w[i..n]},c[i]} for v=V..boundf[i][j]=max{f[i-1][j-w[i]]+c[i],f[i-1][j]}现在我们处理好了f[i][0...V]现在处理f[i+1][0...V]时...我们发现f[i-1][0...V]已经...
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
最新试题
- 将二次函数y=14x2+x−1化成y=a(x+m)2+n的形式是( ) A.y=14(x+2)2−2 B.y=14(x+2)2+2 C.y=14(x−2)2−2 D.y=14(x−2)2+2
- 用12个3组成8个数,使它们的结果等于2000.3 3 3 3 3 3 3 3 3 3 3 3 =2000
- “丝绸之路”的历史故事简短
- 明明编12个,强强编18个,亮比明编的多,比强编的少,又是明和强的数量和的因数,亮编多少个?
- 求雅思口语对话资料 describe a magazine or a newspaper how often you read what kind it is
- be的第三人称单数形式和现在分词
- 英语翻译
- 补全句子 It‘s raining hard outside.Please take your a.when you go out
- 在一个盒子里面有红、蓝两种颜色的铅笔,红色的铅笔有8支,蓝色的铅笔有5支.如果不要用眼睛看,要保证每一次拿出的铅笔中有两种不同颜色的铅笔,至少要拿几支铅笔?为什么?请列式
- 对孔子文学作品方面的评价
热门考点