- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
证明贪心策略3正确性(1)存在包含单位价值最大物品的最优解。使用反证法来证明第一步选择,因为物品已经按单位重量价值递减排序且w1W,则部分背包问题存在最优解v1x1+v2x2+...+vnxn。若x1=1,显然最优解包含单位重量价值最大的物品的结论成立。若x11,则将背包中重量等于(1-x1)w1的部分物品与物品1交换,这样背包的负重不变,但因,重样重量的物品1具有更大的价值,即等量交换后背包的总价值增加了,这与假设是最优解矛盾。如果w1≥W,则直接装入W重的第1个物品部分即为最优解,总价值为最优解包含单位重量价值最大的物品的结论成立!也即,贪心选择的第一步选择总是会包含在某个最优解中。(2)在完成第一步选择之后,子问题P()与原问题P()还是同一类问题,意味着我们的选择没有改变问题的结构。令π为子问题P的最优解,π为原问题P的最优解,则π=π+v1。证明贪心策略3正确性证明贪心策略3正确性还是使用反证法来证明这个结论,假设π不是原问题的最优解,原问题P的最优解为π*。根据第一步结论,我们知道最优解π*中一定含有v1,那么π*-v1就应该是子问题P的解,π*-v1π-v1=π,这与π为子问题P的最优解定义矛盾。所以π=π+v1不可能不是最优解,因此原问题的最优解等于子问题最优解加上第一个选择的物品价值。证明贪心策略3正确性(3)由以上两步证明知道,我们按照单位重量价值由大到小做出的每一步选择,都将原问题简化为一个与原问题相同形式的更小的子问题,使用数学归纳法可以证明这种贪心策略可以得到原问题的一个最优解。计算机算法设计与分析第5章贪心法5.2.1活动安排问题学校有n个分工会需要进行节目彩排活动安排,学校彩排舞台只有一个。每个分工会都有自己的一个空闲时间段,即每个分工会都给出自己可以进行彩排活动的一个起始时间和结束时间。而学校的舞台同一时间只能安排一个分工会入场进行活动。如何安排这次彩排活动,使得被安排的分工会尽可能多,没有能安排的分工会只能放到下次安排。活动安排问题设学校分工会节目彩排活动编号的集合为E={1,2,...,n},第i个分工会节目彩排活动的起始时间为si,结束时间为fi,且sifi。如果安排了第i个分工会进行彩排,则它在半开时间区间[si,fi)内占用舞台资源。当两个活动区间[si,fi)与[sj,fj)不相交,则称活动i和活动j是相容的,即si≥fj或sj≥fi,i≠j,活动i和活动j相容。活动安排问题是求解两两相容的最大活动子集S。活动安排问题分工会i1234567891011起始时间si130535688212结束时间fi4567891011121314贪心策略1:更早的活动起始时间优先策略,这样可以增大舞台资源利用率。按照活动的起始时间先后顺序选择活动。如表所示的11个活动,先安排活动3,则活动1、2、4、5、6、10与活动3均不相容;之后安排与活动3相容的具有更早起始时间的活动7,则活动8、9与活动7均不相容;之后安排与活动7相容的具有更早起始时间的活动11,安排结束。贪心策略1安排的相容活动集合S={3,7,11}。分工会i1234567891011起始时间si130535688212结束时间fi4567891011121314活动安排问题贪心策略2:更早的活动结束时间优先策略,这样可以下一个活动尽早得到安排。按照活动结束时间从小到大顺序选择活动,表中的活动已经按活动结束时间顺序从小到大排序。选择活动1,之后选择与活动1相容活动4,之后选择与活动4相容的活动8,最后选择与活动8相容的活动11,安排结束。贪心策略2安排的相容活动集合S={1,4,8,11}。分工会i1234567891011起始时间si130535688212结束时间fi4567891011121314活动安排问题活动安排问题贪心策略2的正确性证明:将n个活动按照其结束时间fi从小到大排序,排序后的活动序列还是按E={1,2,...,n}编号。第一次先选1号活动,然后接下来的每一步,从E中按顺序选出下一个相容的活动,直到E中所有活动都被检查过一遍。证明贪心策略2能得到活动安排问题的最优解,即考察如下问题:该算法执行到第k步时,选择了k个活动:i1,i2,...,ik,则存在最优解S包含这k个活动,即该算法执行的每一步的结果都是最优解的一部分。活动安
文档评论(0)