こんにちは、私は宿題の問題を与えられました。そこでは、文字列のすべての異なる部分文字列を見つけるように求められます。文字列のすべての部分文字列を通知するメソッドを実装しましたが、割り当ては個別のものを見つけることであるため、すでに部分文字列として一度カウントされているものをカウントしない方法を理解するのに助けが必要です。
public int printSubstrings1(int length)
{
for(int i=0; i<text.length()-length+1;i++)
{
String sub = text.substring(i,length+i);
counter++;
}
return counter;
}
ここで、与えられた文字列から必要な部分文字列の長さを渡しています。私は別の方法でそれをやっています。
したがって、指定された文字列の例は「fred」であり、個別の部分文字列は 10 になります。文字列には繰り返し文字が含まれていないため、私のメソッドは正しい答えを出力します。部分文字列が繰り返される部分で立ち往生しています。
私がフレッドを入力した場合。これが私のメソッドが出力するものです
長さ 1
フレッド
長
さ
2
フレッド
長
さ
3
フレッド
長
さ
4
フレッド