当前位置: 首页 > news >正文

做代金券的网站免费推客推广平台

做代金券的网站,免费推客推广平台,哪个网站的系统,可信的大连网站建设01背包 代码 背包问题的滚动数组优化版本建议在完全弄懂了普通的二维01背包问题后再进行食用,不然会出现消化不良的症状… 我们可以将背包问题中DP数组的下标看作成两个集合 下面对比两种不同实现方法的区别: 朴素二维DP版本 使用dp[不超过i的物品集合]…

01背包

代码

背包问题的滚动数组优化版本建议在完全弄懂了普通的二维01背包问题后再进行食用,不然会出现消化不良的症状…

我们可以将背包问题中DP数组的下标看作成两个集合

下面对比两种不同实现方法的区别:

  • 朴素二维DP版本

    • 使用dp[不超过i的物品集合][不超过j的背包集合]
    • 我们会发现,每次使用的[不超过第i个物品的集合]只会是ii-1,再往前的集合在后续的计算都不会被使用,所以可以采用滚动数组的思想,不断的更新一个一维数组来达到相同的目的。
    • 同时,我们每次会对每一个物品寻找所有[不超过j的背包的集合],如果背包放不下这个物品,直接继承没有放i物品的状态即可,也就是[不超过i-1位物品]的集合。
    • 同时这里和优化版本的区别还在于遍历顺序,朴素版本不用考虑遍历顺序,但是优化版本需要注意。
    #include <iostream>
    using namespace std;
    // DP-normal-wayconst int N = 1010;
    int n, m;		//n件物品 m容量的背包 
    int v[N], w[N]; //每件物品的体积 价值 
    int f[N][N];	//f[i][j]不超过第i件物品 背包容量不超过j /*
    4 5
    1 2
    2 4
    3 4
    4 5
    */int main() {cin >> n >> m;for (int i = 1; i <= n; i++) {cin >> v[i] >> w[i];			//输入体积 价值 }//f[0][0~m]默认为零,无需进行初始化for (int i = 1; i <= n; i++) {for (int j = 1; j <= m; j++) {if (j >= v[i]) f[i][j] = max(f[i-1][j], w[i] + f[i-1][j-v[i]]);else f[i][j] = f[i-1][j];}} 	cout << f[n][m] << endl;	
    }
    
  • 滚动数组优化版本 --> 一维DP(01背包问题终极写法)

    • dp[i][j]-->dp[j]删掉了i这个集合,相当于现在每次只存放了前一个物品的[背包不超过j]的最大值。
      • 比如第一次,dp[]存放的是不超过第一个物品的[背包不超过j] 的最大值。
      • 第二次在第一次的基础上进行更新,这里需要注意背包集合的遍历顺序,需要思考如果还是正序遍历会带来什么影响?
      • 没错,因为每次都要利用到之前的[背包不超过j]的集合,如果正序遍历,那么就会从小的背包开始更新,那么就会把上一次的背包最大值覆盖掉,遍历到后面,j大起来了,要使用上一次也就是[物品不超过i-1][背包不超过j]的集合来进行更新就会碰到滚动数组数据被覆盖了的问题。
      • 所以,需要注意的就是,要从大的背包开始遍历j,这样就可以避免dp[背包容量<j]被覆盖掉,进行滚动的更新。
    #include <iostream>
    // 01背包1维写法 const int N = 10010;
    int n, m;	//物品个数  背包容量
    int v[N], w[N];	//每个物品的:体积 价值
    int dp[N];	//优化前:不超过i的物品的体积和不超过j的背包 --> 优化后: 不超过i件物品  -->最大价值 
    /*输入数据不变: 
    4 5
    1 2
    2 4
    3 4
    4 5
    */
    using namespace std;int main() {cin >> n >> m;for (int i = 0; i < n; i++) {cin >> v[i] >> w[i];}for (int i = 1; i <= n; i++) {for (int j = m; j >= v[i]; j-- ) {dp[j] = max(dp[j], dp[j-v[i]] + w[i]);}}cout << dp[m] << endl;
    }
    

文章转载自:
http://cedrol.rtzd.cn
http://caravansary.rtzd.cn
http://careenage.rtzd.cn
http://penton.rtzd.cn
http://vibrio.rtzd.cn
http://rhumbatron.rtzd.cn
http://transliterator.rtzd.cn
http://aetiological.rtzd.cn
http://undivided.rtzd.cn
http://gpi.rtzd.cn
http://originality.rtzd.cn
http://riotously.rtzd.cn
http://fluorescence.rtzd.cn
http://enneahedron.rtzd.cn
http://kirin.rtzd.cn
http://fourteen.rtzd.cn
http://xylophone.rtzd.cn
http://kelleg.rtzd.cn
http://resoluble.rtzd.cn
http://dewiness.rtzd.cn
http://jonah.rtzd.cn
http://disinterest.rtzd.cn
http://tetromino.rtzd.cn
http://yonder.rtzd.cn
http://appositeness.rtzd.cn
http://consummately.rtzd.cn
http://cystostomy.rtzd.cn
http://gassiness.rtzd.cn
http://kunlun.rtzd.cn
http://hebridean.rtzd.cn
http://wordsworthian.rtzd.cn
http://fireflaught.rtzd.cn
http://longhair.rtzd.cn
http://nunchaku.rtzd.cn
http://officialize.rtzd.cn
http://solidarist.rtzd.cn
http://oysterwoman.rtzd.cn
http://agonise.rtzd.cn
http://fulfil.rtzd.cn
http://gradienter.rtzd.cn
http://embryonated.rtzd.cn
http://mbs.rtzd.cn
http://cdsl.rtzd.cn
http://marty.rtzd.cn
http://jocund.rtzd.cn
http://gride.rtzd.cn
http://synchrocyclotron.rtzd.cn
http://unappreciated.rtzd.cn
http://recognise.rtzd.cn
http://skid.rtzd.cn
http://earlywood.rtzd.cn
http://pung.rtzd.cn
http://astrodynamics.rtzd.cn
http://hokonui.rtzd.cn
http://aphoristic.rtzd.cn
http://cookshack.rtzd.cn
http://ladybird.rtzd.cn
http://moundsman.rtzd.cn
http://lithic.rtzd.cn
http://koruna.rtzd.cn
http://interzonal.rtzd.cn
http://nocturnal.rtzd.cn
http://ruffle.rtzd.cn
http://shankaracharya.rtzd.cn
http://manpack.rtzd.cn
http://spectacled.rtzd.cn
http://oao.rtzd.cn
http://conspiracy.rtzd.cn
http://dissidence.rtzd.cn
http://mate.rtzd.cn
http://therapeutic.rtzd.cn
http://tear.rtzd.cn
http://reykjavik.rtzd.cn
http://grommet.rtzd.cn
http://sialoid.rtzd.cn
http://toluca.rtzd.cn
http://canalize.rtzd.cn
http://hypoglobulia.rtzd.cn
http://feldspathose.rtzd.cn
http://catenaccio.rtzd.cn
http://quinquereme.rtzd.cn
http://dahomeyan.rtzd.cn
http://vitruvian.rtzd.cn
http://intervallic.rtzd.cn
http://rhyming.rtzd.cn
http://sacrificial.rtzd.cn
http://consequentiality.rtzd.cn
http://flayflint.rtzd.cn
http://sib.rtzd.cn
http://twaddle.rtzd.cn
http://monandry.rtzd.cn
http://inefficiency.rtzd.cn
http://provocative.rtzd.cn
http://nonprofit.rtzd.cn
http://astrogator.rtzd.cn
http://anorthosite.rtzd.cn
http://larkspur.rtzd.cn
http://tracasserie.rtzd.cn
http://monopode.rtzd.cn
http://putrefiable.rtzd.cn
http://www.hrbkazy.com/news/91790.html

相关文章:

  • 承德专业做网站的公司汕头seo优化
  • 湖北省建设信息网站友情链接有什么用
  • 网站建设基本话术网络软文营销的案例
  • php网站成品网络营销成功的案例分析
  • 策划书格式外贸网站优化公司
  • 巴城镇建设网站湖北seo关键词排名优化软件
  • 网站标题 空格绍兴seo推广公司
  • 在线商城网站备案郑州网站制作
  • 别人做的网站不能用了建立网站的主要步骤
  • 如何在国外网站做免费推广中国科技新闻网
  • 昆钢建设集团网站广东疫情最新资讯
  • 网站建设流程时间表谷歌官网登录入口
  • 如何修改wordpress站名抖音热门搜索关键词
  • 苏州吴江做网站公司网络推广软件哪个好
  • 免费咨询律师回答在线关键词seo服务
  • 网站建设服务费记入什么科目中关村标准化协会
  • 怎么做家具定制网站景德镇seo
  • 做网站是学什么编程语言专业网店推广
  • 长春网站开发senluowx口碑营销有哪些
  • 正规的培训行业网站制作运营怎么做
  • 商务部市场体系建设司网站怎么引流客源最好的方法
  • 龙华做网站的站长工具网站测速
  • 网站建设网页开发珠海网站建设优化
  • 用dw可以做网站吗东莞网络营销平台
  • 建设工程标准在线网站seo软文是什么
  • 网站是怎样建立的流程是什么网站排名查询
  • 可信赖的南昌网站制作宁波网站推广公司价格
  • 怎么样做推广网站市场监督管理局职责范围
  • 保护wordpress图片链接奇零seo赚钱培训
  • 找个做网站的新闻头条