-4

これらの手順が理解できません。

function Palindrome($str) {
    if ((strlen($str) == 1) || (strlen($str) == 0)) {
        echo " THIS IS PALINDROME";
    }
    else {
        if (substr($str,0,1) == substr($str,(strlen($str) - 1),1)) {
            return Palindrome(substr($str,1,strlen($str) -2));
        }
        else { echo " THIS IS NOT A PALINDROME"; }
    }
}

Palindrome("456");
4

3 に答える 3

0

それは再帰的です...

そのため、外側と内側の文字をチェックします。それらが一致する場合、次の最も外側/内側の文字に続きます。

NURSESRUN

チェックします: 最初と最後の文字が等しいか? (N=N?) はい。2 番目と最後から 2 番目は等しいですか? (U=U?)-自分自身を再度呼び出す。これが再帰です。

等しくない文字に遭遇した場合、終了して戻ります'NOT A PALINDROME' チェックを使い果たした場合 (偶数の文字の場合は長さゼロの文字列、奇数の場合は文字列の長さ 1)、「終了条件」に達し (これ以上の再帰はありません)、戻ります'THIS IS A PALINDROME'

于 2013-06-21T13:54:03.380 に答える