算法设计与分析(十一).ppt

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

算法分析BM算法的最坏情况时间复杂度可以达到Θ(n·m)。如P是am而文本是an时。一般情况可以达到O(n)。如果|Σ||P|,算法的平均时间可以达到O(n/m)。这是因为很多字符不在模式中出现,模式经常会因为坏字符滑动m距离。**模式通过自匹配计算π的过程如下算法11.2计算模式的前缀函数πCOMPUTE-PREFIX-FUNCTION(P)//P是已知的模式m←length[P]π[1]←0k←0//k是当前已匹配的前缀长度forq←2tomdowhilek>0andP[k+1]≠P[q]dok←π[k]repeatifP[k+1]=P[q]thenk←k+1endifπ[q]←krepeatreturnπENDCOMPUTE-PREFIX-FUNCTIONCOMPUTE-PREFIX-FUNCTION(P)m←length[P]π[1]←0k←0forq←2tomdowhilek>0andP[k+1]≠P[q]dok←π[k]repeatifP[k+1]=P[q]thenk←k+1endifπ[q]←krepeatreturnπENDCOMPUTE-PREFIX-FUNCTION91234510cababaa0678babip[i]π[i]k=091234510cababaa00678babip[i]π[i]k=0,q=2P[0+1]≠P[2],k=0,不进入while循环π[2]=091234510cababaa001678babip[i]π[i]k=0,q=3P[0+1]=P[3],k=0,不进入while循环P[0+1]=P[3],k=1π[3]=1COMPUTE-PREFIX-FUNCTION(P)m←length[P]π[1]←0k←0forq←2tomdowhilek>0andP[k+1]≠P[q]dok←π[k]repeatifP[k+1]=P[q]thenk←k+1endifπ[q]←krepeatreturnπENDCOMPUTE-PREFIX-FUNCTION91234510cababaa0012678babip[i]π[i]k=1,q=4P[1+1]=P[4],不进入while循环P[1+1]=P[4],k=1+1=2π[4]=291234510cababaa00123678babip[i]k=2,q=5P[2+1]=P[5],不进入while循环P[2+1]=P[5],k=2+1=3π[5]=391234510cababaa00123678bab4ip[i]k=3,q=6P[3+1]=P[6],不进入while循环P[3+1]=P[6],k=3+1=4π[6]=4π[i]π[i]COMPUTE-PREFIX-FUNCTION(P)m←length[P]π[1]←0k←0forq←2tomdowhilek>0andP[k+1]≠P[q]dok←π[k]repeatifP[k+1]=P[q]thenk←k+1endifπ[q]←krepeatreturnπENDCOMPUTE-PREFIX-FUNCTION91234510cababaa00123678bab45ip[i]k=4,q=7P[4+1]=P[7],不进入while循环P[4+1]=P[7],k=4+1=5π[7]=591234

文档评论(0)

177****7891 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档