Palindrome is a string which is spelled the same way forward
Solution
import java.util.Scanner;
public class PalindromeRecursive{
public static void main(String[] args){
System.out.print(\"Enter a string to check if its a palindrome :: \");
Scanner input = new Scanner(System.in);
String inputString = input.nextLine();
String palindromeString = cleanupString(inputString);
boolean isPalindrome = checkPalindrome(palindromeString, 0, palindromeString.length() - 1);
if(isPalindrome){
System.out.println(\"The given string is a palindrome\");
}
else{
System.out.println(\"The given string is not a palindrome\");
}
input.close();
}
static String cleanupString(String str){
String cleanupStr = \"\";
for(int i = 0; i < str.length(); i++){
if(str.charAt(i) >= \'a\' || str.charAt(i) <= \'z\'){
cleanupStr += str.charAt(i);
}
}
return cleanupStr;
}
private static boolean checkPalindrome(String inputString, int low, int high){
if(low == high || low == high - 1){
if(inputString.charAt(low) == inputString.charAt(high)) return true;
else return false;
}
else{
return checkPalindrome(inputString, low + 1, high - 1);
}
}
}
