计算理论与算法年分支限界法.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

堆堆—堆调整3)新堆构成30241820216312550**第30页,共59页,星期日,2025年,2月5日堆排序(HeapSort)堆—堆调整voidHeapAdjust(int*h,introot,intm){

//已知h[root..m]除根root以外都满足堆的定义,目的成为大顶堆intrc;rc=h[root];intj;for(j=2*root;j=m;j*=2){//沿较大儿子向下筛选if(jmh[j]h[j+1])j++;//j为较大儿子的下标if(rc=h[j])break;//rc应该插入在位置root上h[root]=h[j];root=j;}h[root]=rc; }**第31页,共59页,星期日,2025年,2月5日堆堆—堆建立堆建立是把一个无序的序列建成一个堆的过程它是思想是从最底层的子树进行堆调整,先将子树建成堆,然后继续调整,直到整个树构成堆2021356183012502420213524183012506**第32页,共59页,星期日,2025年,2月5日堆堆—堆建立堆建立是把一个无序的序列建成一个堆的过程它是思想是从最底层的子树进行堆调整,先将子树建成堆,然后继续调整,直到整个树构成堆2021350241830125620213050241831256**第33页,共59页,星期日,2025年,2月5日堆堆—堆建立堆建立是把一个无序的序列建成一个堆的过程它是思想是从最底层的子树进行堆调整,先将子树建成堆,然后继续调整,直到整个树构成堆2050302124183125650243021201831256**第34页,共59页,星期日,2025年,2月5日堆堆—堆建立最后一个非叶节点是从[n/2]开始的,所以从这个节点开始向前调整for(inti=length/2;i0;i--){ HeapAdjust(h,i,length);}**第35页,共59页,星期日,2025年,2月5日方法概述:示例1示例1(FIFO队列分枝限界法)问题:0-1背包问题:物品数n=3,重量w=(20,15,15),价值v=(40,25,25),背包容量c=30,试装入最大价值之和的物品?求解:①解空间:{(0,0,0),(0,0,1),…,(1,1,1)}②解空间树:DBHAIEJKFCLMGNO11111110000000**第36页,共59页,星期日,2025年,2月5日方法概述:示例1③BFS搜索(FIFO队列)扩展结点活结点队列(可行结点)可行解(叶结点)解值AB,CBCBD,E(D死结点)CECF,GEFGEJ,K(J死结点)FGK40FL,MGL,M50,25GN,OφN,O25,0∴最优解为L,即(0,1,1);解值为50DBHA

文档评论(0)

xiaolan118 + 关注
实名认证
文档贡献者

你好,我好,大家好!

版权声明书
用户编号:7140162041000002

1亿VIP精品文档

相关文档