我正在寻找
Java的方法make后缀数组.
我发现了两种能力变种.此外,我希望更深入地了解这些变体之间的差异.
包括运行时间和空间.
代码(后缀):
public static String[] suffixes(String s)
{
int N = s.length();
String[] suffixes = new String[N];
for (int i = 0; i < N; i++)
suffixes[i] = s.substring(i, N);
return suffixes;
}
代码(StringBuilder后缀):
public static String[] suffixes(String s)
{
int N = s.length();
StringBuilder sb = new StringBuilder(s);
String[] suffixes = new String[N];
for (int i = 0; i < N; i++)
suffixes[i] = sb.substring(i, N);
return suffixes;
}
题:
>如何有效地形成后缀数组?