Write a recursive, bool-valued  function, isPalindrome that accepts a string  and returns whether  the string  is a palindrome.

Write a recursive, bool-valued  function, isPalindrome that accepts a string  and returns whether  the string  is a palindrome.

LANGUAGE: C++

CHALLENGE:

A palindrome is a string  that reads the same forwards or backwards; for example dad, mom, deed (i.e., reversing a palindrome produces the same string ). Write a recursive, bool-valued  function, isPalindrome that accepts a string  and returns whether  the string  is a palindrome.


A string , s, is a palindrome if:
s is the empty string  or s consists of a single letter (which reads the same back or forward), or
the first and last characters  of s are the same, and the rest of the string  (i.e., the second through next-to-last characters ) form a palindrome.

SOLUTION:



bool isPalindrome(string word){
    if(word.length() < 2) {
        return true;
    }else if(word[0] == word[word.length() - 1]){
        return isPalindrome(word.substr(1, word.length() - 2));
    }
    return false;
}

Add comment