Given a non-empty string s
, you may delete at most one character. Judge whether you can make it a palindrome.
Example 1:
Input: "aba"
Output: True
Example 2:
Input: "abca"
Output: True
Explanation: You could delete the character 'c'.
class Solution {
public boolean validPalindrome(String s) {
int l=-,r=s.length();
while(++l<--r){
if(s.charAt(l)!=s.charAt(r))
return isPalindrome(s,l+,r)||isPalindrome(s,l,r-);
}
return true;
} public boolean isPalindrome(String s,int l,int r){
while(l<r){
if(s.charAt(l)!=s.charAt(r))
return false;
l++;
r--;
}
return true;
}
}