后缀数组

https://oiwiki.org/string/sa/

性质 1:

sa[rk[i]]=rk[sa[i]] 翻译一下,即记 i 的排名为 ksa[k]=i,排名为 i 的后缀的排名为 i

性质 2:

x[1,n],ix,j<i,LCP(sa[x],sa[i])>LCP(sa[x],sa[j])

即对于排名为 x 的后缀,离得越近,LCP 越大。

考虑反证,即 LCA(sa[x],sa[i])<LCP(sa[x],sa[j]),记左边项为 L,不妨令右边为 L+1,则 sa[j]:[1,L+1]=sa[x]:[1,L+1],因为 j<i,所以显然有 sa[i]:[L+1]>sa[j]:[L+1],sa[i]:[L+1]<sa[x]:[L+1],显然只能取到空集。

性质 3

爷懒得写。。


__EOF__

本文作者F x o r G
本文链接https://www.cnblogs.com/xugangfan/p/16657735.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   FxorG  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示