0/1背包问题1.问题描述给定一个载重量为m,n个物品,其重量为吗,价值为片,1v=iv=n,要求:把物品装入背包,并使包内物品价值最大2.问题分析在0/1背包问题中,物体或者被装入背包,或者不被装入背包,只有两种选择。循环变量i,j意义:前i个物品能够装入载重量为j的背包中(n+1)*(m+1)数组value意义:valueij表示前i个物品能装入载重量为j的背包中物品的最大价值若wij,第i个物品不装入背包否则,若wiv=j且第i个物品装入背包后的价值valuei-1j,贝1记录当前最大价值(替换为第i个物品装入背包后的价值)计算最大价值的动态规划算法如下:/计算for(i=1;ivrow;i+)for(j=1;jvcol;j+)wij,第i个物品不装入背包valueij=valuei-1j;wiv=j,且第i个物品装入背包后的价值valuei-1j,则记录当前最大价值inttemp=valuei-1j-wi+vi
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。