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以降のバージョンで同じことを行うための迅速かつ簡単な方法はありますか?