推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

字符串算法的综合应用:后缀自动机的原理与构建.docx

资料介绍

字符串算法的综合应用:后缀自动机的原理与构建

后缀自动机(Suffix Automaton,SAM)是字符串处理领域最强大的数据结构之一,它以自动机的形式紧凑地存储一个字符串的所有子串信息,能在  时间内构建,并支持统计子串个数、求最长重复子串、匹配模式串等大量操作。虽然实现有一定复杂度,但理解其原理后,会发现它是一个极其优雅的算法。

后缀自动机的概念

后缀自动机是一个接受字符串所有后缀的最小确定性有限状态自动机(DFA)。它有  个状态和  条转移边,却能表示一个字符串的所有子串——因为每个子串都是某个后缀的前缀。

后缀自动机的状态具有深刻的含义:每个状态代表一组"endpos(出现位置集合)相同"的子串。这些子串构成一个等价类,共享相同的转移行为。理解这个等价类划分,是理解SAM的关键。

SAM的构建是在线的:从左到右逐个字符插入,每次插入后自动机仍表示当前前缀的所有后缀。构建复杂度 (均摊)。

SAM的核心组成部分


部分文件列表

文件名 大小
字符串算法的综合应用:后缀自动机的原理与构建.docx 40K

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载