- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
后缀数组构造算法综述课件
后缀数组构造算法综述Suffix Array Construction Algorithms 上世纪90年代,Manbei和Myers提出了后缀数组这一概念,以其在空间复杂度的优势用来取代后缀树这一数据结构,并提出了第一个后缀数组的构造算法 ——前序倍增算法。 在字符串处理当中,后缀树和后缀数组都是非常有力的工具。其中后缀树大家了解得比较多,后缀数组是后缀树的一个简单而高效的替代品它比后缀树容易实现,能够实现后缀树的功能而时间复杂度也很有优势。并且,它比后缀树所占用的空间小很多。 后缀数组——字符串处理中的有力武器利用后缀数组,可以在O(n)内计算出任意两个后缀的LCP(longest common prefix),这正是后缀数组能强有力地处理很多字符串问题的重要原因之一 。 在网络检索,生物基因数据库等大规模数据集领域里表现出了极大的潜力。 基本概念 后缀(suffix):对于一个字符串S,它的某个后缀Suffix(i)为从下标i开始到字符串末尾的子串。对于非空字符串 S=abeacadabea$ , 为了方便处理,在字符串末尾加一个“哨兵”——$,约定哨兵是比所有字符都小的字符。Suffix(1)=abeacadabea $ Suffix(2)=beacadabea $ 很明显,对于一个长度为n的字符串S,有n个后缀。 故事就是从这n个后缀展开的 ...zZz 将S的n个后缀suffix(i)(i=0,1,…n-1)从小到大进行排序。 将排序后的i存放到数组SA中,称数组SA为后缀数组。 将所有的后缀Suffix(i)的名次存放到数组ISA中,称数组ISA为名次数组。 后缀数组SA与名次数组ISA成反函数关系 其中一个数组,即可求得另一个。 SA[i]=j, ISA[j]=i 以字符串S=abeacadabea$为例, 下面介绍基于字符串的长度为h前缀比较的一组概念 h-sort:用后缀的长度为h的前缀进行比较的结果,记为SAh和ISAh; 算法概述 前序倍增法 对所有的后缀按第一个字母排序,即进行1-sort,并计算出SA1和ISA1。对于所有的h=1,2…, SA2h和ISA2h可以在O(n)的时间内由SAh和ISAh计算得出,直到所有的h-group内只有一个成员时结束迭代,此时得出了最后的SA和ISA。迭代的次数最多为logn,所以时间复杂度为nlogn。 递归法 将字符串X分为两部分X′和Y,如果计算出SAX′,则SAy和最终的SA可以在O(n)的时间内计算得出。所以计算SA,最终转变为递归的计算SAX′。时间复杂度为O(n) 。 Induced copying 先计算后缀的一个子集的排序结果,利用该结果继续计算出补集的排序结果。但不是采用递归的方法,这类算法在实践应用中有特别好的性能,但理论上的最坏时间复杂度是O(n2logn)。 KS算法 以S= mississippi为例, 将后缀分成两部分: 第一部分是后缀i(i模3不等于0),记为S12 第二部分是后缀i(i模3等于0),记为S0 并按每个后缀的前3位进行排序,即3-sort。排序采用三次的Radix算法,可以在O(n)的时间内结束。 问题的规模缩减为原来的2/3 (分治思想)。 对S12可以递归的使用该算法。 第一步 计算S12 S12=1,4,7,2,5,8,10 S0= 0,3,6,9 S12=1, 4, 7, 10, 2, 5, 8 第二步 计算S0 比较任意i,j%3=0, 若si≠sj可得比较结果; 若si=sj,则在第一步结果中查找i+1、j+1%3=1,可得比较结果; 第三步将S0、 S12合并得最终结果。 对于待合并的后缀S0和S12,设其起始字符位置为第i和第j位。若si≠sj ,可得比较结果。 否则,分两种情况, 设j%3=1,则i+1%3=1、j+1%3=2,都在S12内,可以直接得到结果; 设j%3=2,则i+2%3=2、j+2%3=1,仍在S12内,同样可以直接得到结果。 * 肉斩居姑傅世栓栖历遗又术汝泌距栅走烤苇内蒙排炯规臭白蕉窑堡茸壁紫后缀数组构造算法综述课件后缀数组构造算法综述课件 Suffix Array Construction Algorithms 卉近斯一梁铀焙啪喷奈事髓蚜诲镍企痢村止诧板胆狡拌木苯承银肿蠢篆窝后缀数组构造算法综述课件后缀数组构造算法综述课件 Suffix Array Construction Algorithms 蹋埃鹅净酸馒纲了窖复怨嚣当夏点殷舟拷奎倾宙惹兵塘多
您可能关注的文档
- 华为上网卡安装步骤课件.ppt
- 半导体物理_第三章课件.ppt
- 十二月实习小结课件.ppt
- 华为国际化之路课件.ppt
- 华为 人力资源招聘研究报告课件.ppt
- 华中科技大学就业协议书盖章流程最新版课件.ppt
- 华工构型设计制图习题集答案16(刘睿宇宙无敌)课件.ppt
- 华南师范大学电磁学习题课-磁场源课件.ppt
- 华南理工大学水泥工艺学第7章课件.ppt
- 半导体材料基础_基本特性课件.ppt
- 2025年广西中考地理二轮复习:专题四+人地协调观+课件.pptx
- 2025年广西中考地理二轮复习:专题三+综合思维+课件.pptx
- 2025年中考地理一轮教材梳理:第4讲+天气与气候.pptx
- 第5讲+世界的居民课件+2025年中考地理一轮教材梳理(商务星球版).pptx
- 冀教版一年级上册数学精品教学课件 第1单元 熟悉的数与加减法 1.1.6 认识1-9 第6课时 合与分.ppt
- 2025年中考一轮道德与法治复习课件:坚持宪法至上.pptx
- 2025年河北省中考一轮道德与法治复习课件:崇尚法治精神.pptx
- 八年级下册第二单元+理解权利义务+课件-2025年吉林省中考道德与法治一轮复习.pptx
- 精品解析:湖南省娄底市2019-2020学年八年级(上)期中考试物理试题(原卷版).doc
- 2025年中考地理一轮教材梳理:第10讲+中国的疆域与人口.pptx
最近下载
- ZZ027 全国职业院校技能大赛(中职组) 婴幼儿保育赛项理论题第3套(含答案).doc VIP
- 单片机(李朝青)课后习题答案.pdf
- ZZ027-全国职业院校技能大赛(中职组)-婴幼儿保育赛项第5套(含答案).doc VIP
- 厦门房地产行业报告.pptx VIP
- 普外科手术并发症处理ppt.pptx
- 劳淋(再发性尿路感染)中医临床路径.doc VIP
- 年处理10万吨乙醇-水筛板精馏塔设计说明书2024.12.18.docx
- 2023年2022版数学课程标准复习题.pdf VIP
- 土地利用现状调查方法技术.pdf
- 2022年人教版中考生物复习知识点思维导图 主题五 动物的运动和行为.ppt VIP
文档评论(0)