算法合集之动态规划算法时间效率的优化.pptx

算法合集之动态规划算法时间效率的优化.pptx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
算法合集之动态规划算法时间效率的优化;动态规划算法的时间复杂度=;一、减少状态总数;例一、 Raucous Rockers 演唱组(USACO`96);设n首歌曲按照创作顺序排序后的长度为long[1..n],则动态规划的状态表示描述为:;改进的状态表示描述为: g[i,j]=(a, b),0≤i≤n,0≤j≤i,0≤a≤m,0≤b≤t,表示在前i首歌曲首录制所需的最少唱片为:a张唱片另加b分钟。 状态转移方程为: g[i, j]=min{g[i-1,j],g[i-1,j-1]+long[i]}其中(a, b)+long[i]=(a’, b’)的计算方法为:当b+long[i] ≤t时: a’=a; b’=b+long[i]; 当b+long[i] >t时: a’=a+1; b’=long[i]; 规划的边界条件: 当0≤i≤n时,g[i,0]=(0,0) 题目所求的最大值是:answer=max{k| g[n, k]≤(m-1,t)};例三、石子合并问题(NOI`95) [问题描述];ij 规划的边界条件为:m[i,i]=0 令s[i,j]=k,表示合并的最优断开位置。算法的时间复杂度为O(n3)。;合并第i堆到第j堆石子的最优断开位置s[i,j]要么等于i,要么等于j-1,也就是说最优合并方案只可能是:;状态转移方程优化为:;例三、LOSTCITY (NOI`2000);我们分别用v,u,a表示动词,名词和辅词,给出的文章用L[1..M]表示,则状态表示描述为:;

您可能关注的文档

文档评论(0)

152****4379 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档