网站大量收购独家精品文档,联系QQ:2885784924

注释常用算法课件.ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
注释常用算法课件

动态规划 隐马尔可夫模型 聚类;动态规划;13世纪初,欧洲数学家斐波拉契写了一本《算盘书》,以下是其中一个有趣的题目: “如果一对兔子每月能生1对小兔子,而每对小兔在它出生后的第3个月里,又能开始生小兔子,假定在不发生死亡的情况下,由一对初生的兔子开始,1年后能繁殖成多少对兔子?” 把推算得到的头几个数摆成一串。 1,1,2,3,5,8… 这串数隐含着一个规律:从第三个数起,后面的每个数都是它前面两个数的和。按照这个规律推算出来的数,就构成了数学史上有名的数列:“斐波拉契数列”。;抽象成函数: f(1)=1,f(2)=1,f(3)=2,f(4)=3,f(5)=5,f(6)=8,f(7)=13…f(k)=f(k-1)+f(k-2) 我们可以得出这个序列的递归定义 1 if (n=1) or (n=2) f(n)= f(n-1)+f(n-2) if n=3 用伪代码实现以上过程: 1.procedure f(n) 2.if (n=1) or (n=2) then return 1 3.else return f(n-1) + f(n-2);这种递归形式有简明、容易书写和容易查错等优点,最主要的是它的抽象性。但是并不能认为这个递归过程是有效的,相反,由于有许多对过程的重复调用,我们可以把递推式做适当的展开 f(n) = f(n-1) + f(n-2) =2f(n-2) + f(n-3) =3f(n-3) + 2f(n-4) =5f(n-4) + 3f(n-5) ;更有效的方法,应该采用自底向上的计算方法,先从f(1)算起。 1.procedure f(n) 2.if (n=1) or (n=2) then return 1 3.f[1]←1 4.f[2]←1 5.for i ← 3 to n 6. f[i] ← f[i-1] + f[i-2] 7.return f[n];最长公共子序列问题;为了使用动态规划技术,我们首先寻找一个求最长公共子序列长度的递推公式,令A= ,B= ,L[I,j]表示A和B的最长公共子序列的长度。 注意,i和j可能是0,此时, 和 中的一个或同时可能为空字符串。即如果i=0或j=0,那么L[i,j]=0。很容易证明如下结论: 若 = ,L[i,j]=L[i-1,j-1]+1; 若 ,L[i,j]=max{L[i,j-1],L[i-1,j]} ;根据以上推论,可得出如下算法: 1. for i ←0 to n 2. L[i,0] ←0 3. end for 4. for j ←0 to m 5. L[0,j] ←0 6. end for 7. for i ← 1 to n 8. for j ←1 to m 9. if = then L[i,j] ← L[i-1,j-1]+1 10. else L[i,j] ←max{L[i,j-1],L[i-1,j]} 11. end if 12. end for 13.end for 14.return L[n,m] ;设G=(V,E)是一个有向图,其中每条边(i,j)有一个非负的长度l[i,j],如果从顶点i到顶点j没有边,则l[i,j]=∞。问题是要找出从每个顶点到其他所有顶点的距离,这里从顶点x到顶点y的距离是指从x到y的最短路径的长度。 我们假设V={1,2,…,n},设i和j是V中两个不同的顶点,定义 是从i到j,并且不经过{k+1,k+2,…,n}中任何顶点的最短路径的长度。 根据这个定义,可以递归地计算 如下: l[i,j] 若k=0 = min{ , + } 若1=k=n ;FLOYD算法: 1. D←l {将输入矩阵l复制到D} 2. for k ←1 to n 3. for i ←1 to n 4. for j ←1 to n 5. D[i,j]=min{D[i,j],D[i,k]+D[k,j]} 6. end for 7. end for 8.end

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档