数字三角形学习.pptx

上传人:莉*** 文档编号:87277809 上传时间:2023-04-16 格式:PPTX 页数:9 大小:102.74KB
返回 下载 相关 举报
数字三角形学习.pptx_第1页
第1页 / 共9页
数字三角形学习.pptx_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《数字三角形学习.pptx》由会员分享,可在线阅读,更多相关《数字三角形学习.pptx(9页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、分析你会立刻发现这是一个动态规划的决策问题;每次有两种选择向左和向右,一个n层的数字三角形完整路线有2n条,所以当n比较大的时候,用回溯法是行不通滴。如果用d(i,j)为从格子(i,j)出发时得到的最大和(包括格子(i,j)本身),那么可以得到状态转移方程:d(i,j)=a(i,j)+maxd(i+1,j),d(i+1,j+1);第1页/共9页递归计算有了状态转移方程就好办了。int dp(int i,int j)if(i=n)return dij=aij;else return dij+=max(dp(i+1,j),dp(i+1,j+1);第2页/共9页重叠子问题这样做是正确的,但是时间效率

2、太低,其原因在于重复计算。1,12,12,23,13,23,23,34,14,24,24,34,24,34,34,4第3页/共9页记忆化搜索显而易见,这个算法就是最简单的搜索算法。时间复杂度为2n,明显是会超时的。分析一下搜索的过程,实际上,很多调用都是不必要的,也就是把产生过的最优状态,又产生了一次。第4页/共9页记忆化搜索记忆化搜索把程序分成两部风。首先把d d数组初始化为-1-1;int dp(int i,int j)int dp(int i,int j)memset(d,-1,sizeof(d);memset(d,-1,sizeof(d);if(dij=0)return if(dij=

3、0)return dij;dij;else if(i=n)else if(i=n)return dij=aij;return dij=aij;else return else return dij=aij+max(dp(i+1,j),dpdij=aij+max(dp(i+1,j),dp(i+1,j+1);(i+1,j+1);时间复杂度为n2;n2;记忆化的功效第5页/共9页动态规划的实质可以看出动态规划的实质就是这也就是为什么我们常说动态规划必须满足重叠子问题的原因.记忆化,正符合了这个要求.第6页/共9页递推计算因为在计算 d(i,j)前,它所需要的d(i+1,j)和d(i+1,j+1)一定已经计算出来了。for(i=1;i=1;i-)for(j=1;jdi+1 j+1)di j=ai j+di+1 j;else di j=ai j+di+1 j+1;第7页/共9页ENDPOJ1163POJ2760第8页/共9页感谢您的观看!第9页/共9页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com