后缀自动机 [取巨神博客之精华]

大部分内容来源于https://www.luogu.org/blog/Kesdiael3/hou-zhui-zi-dong-ji-yang-xie

1. 后缀自动机可以在一个DAG上表示所有子串


2. 在trie树中插入每个后缀就是后缀自动机的暴力版本

对于aabab建trie,红色为根,黄色为终止节点

后缀自动机 [取巨神博客之精华]

 后缀自动机 [取巨神博客之精华]

后缀自动机 [取巨神博客之精华] 


3. endpos 的定义

后缀自动机 [取巨神博客之精华]


4. 一些性质

1.如果两个子串的endpos相同,则其中子串一个必然为另一个的后缀 

2. 若len(w) >= len(u)

后缀自动机 [取巨神博客之精华]

3. 对于endpos相同的子串,我们将它们归为一个endpos等价类。对于任意一个endpos等价类,将包含在其中的所有子串依长度从大到小排序,则每一个子串的长度均为上一个子串的长度减11,且为上一个子串的后缀 

后缀自动机 [取巨神博客之精华]

后缀自动机 [取巨神博客之精华] 

后缀自动机 [取巨神博客之精华] 

后缀自动机 [取巨神博客之精华] 


5. 为何如此构造

后缀自动机 [取巨神博客之精华]


后缀自动机 [取巨神博客之精华] 


6. 构造方法

 后缀自动机 [取巨神博客之精华]

证明看不懂,还是感性理解吧


7. 用途

后缀自动机 [取巨神博客之精华] 后缀自动机 [取巨神博客之精华]

后缀自动机 [取巨神博客之精华]