私は宿題で問題を終了しましたが、これは文字列の中で最も長い回文を見つけることを目的としているので、 "hellomomomkk"という文字列があればmomomこの与えられた文字列の最長のパリンドローム。なぜこれはJavaとStringの長さで動作するのですか
for(int i = 0; i < s.length(); i++) {
for(int j = i; j <= s.length(); j++) {
if(isPalindrome(s.substring(i, j))) {
if(s.substring(i, j).length() > longest.length()) {
longest = s.substring(i, j);
}
}
}
}
return longest;
isPalindromeはまさにそのことです。部分文字列が回文であれば真または偽を返します。私の質問はこれです。なぜ私はそうですか
for(int j = i; j <= s.length(); j++)
私のコードは動作しますか?私は
for(int j = i; j < s.length(); j++)
を行う場合は私のコードが破壊され、文字列が「こんにちは」であれば、jはに終わるだろうが、文字の実際の量は4 0カウントから始まっていますか?だからなぜ< =コードにエラーがないのですか?それはなぜ機能するのですか?
ああ!今私はそれを得る:)明確化のためにありがとう! – Matt