在 Pre-java 7 中,我可以简单地执行以下操作:
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;
}
但是,在 Java 7 中, substring 方法返回一个新字符串。所以消耗的空间将是O(n^2)
字符串n
的长度。
在 Java 7 和更高版本中是否有任何快速简便的方法可以做到这一点?