bool palindrome(char input[], int siz, int start){
// siz = size of the array ,start =starting point of the array ie 0
if(input[start] == '\0') {
return true;
} else if(input[start] == input[siz - start - 1]) {
return true;
palindrome(input, siz, start + 1);
} else {
return false;
}
}
この再帰関数を使用して回文文字列を検索しようとしていますが、文字列の最初のアルファベットと最後のアルファベットだけをチェックしているかのように単語alia
が回文として出力されます。 私が取った基本ケースは、配列の開始時にnull要素が見つかった場合にtrueを返します。 else最初の要素と最後の要素が等しい場合、それはtrueを返し、再帰的に自身をpalindrome(input,siz,start+1)
で呼び出す。そうでない場合はfalseを返す。再帰を使用して回文列を見つけるか?
それは – bogor
はあなたが、私は完全なコードを追加、編集ので、再びそれを試してみましたが、動作しませんか? – Jish