我在互联网上搜索:我发现了许多使用后缀树但不使用后缀数组的 k 重复子串的解决方案。
给定字符串:abaabbabb
最大重复子字符串数,k = 字符串长度 = 6
最初 a[0..k]={0}
子字符串的频率:“a”= 4 因此 a[4]=1;
子字符串的频率:“ab”= 3 因此 a[3]=1;
子串的频率:“b”= 4 因此 a[4]= a[4]+1 = 2;等等..
复杂性:< O(nlogn) 用于数组生成。
使用后缀数组:
“abaabbabb”的后缀:
LCP INDEX
0 2 aababb
1 0 abaababb
3 3 ababb
2 5 abb
0 7 b
1 1 baababb
2 4 babb
1 6 bb