后缀数组学习笔记

https://www.cnblogs.com/victorique/p/8480093.html

学习了这篇bolg  

LCP Lemma

LCP(i,k)=min(LCP(i,j),LCP(j,k)) 对于任意1<=i<=j<=k<=n

感觉直接想也能想到这个证明,就是suff(sa[i]),suff(sa[k])的最长公共前缀,而suff(sa[i])与suff(sa[k])相同的前缀肯定不如

suff(sa[i])与suff(sa[j]),suff(sa[k])与suff(sa[j])或相同的多,因为sa[i]是按后缀排序的,序离得远,相似度肯定小,所以上述等式显然成立。

LCP Theorem

LCP(i,k)=min(LCP(j,j-1)) 对于任意1<i<=j<=k<=n

这里跟刚才一样,j,j-1离得更近了LCP肯定不会小,所以上述成立

 

 

https://www.cnblogs.com/zwfymqz/p/8413523.html#_label1_0

这篇是找的很多篇中过程解析最清楚的

https://blog.csdn.net/a1035719430/article/details/80217267

这篇是找的很多篇中代码解析最清楚的

上面2个结合看应该就没问题了

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章