给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。
示例 1:
输入: "aba"
输出: True
示例 2:
输入: "abca"
输出: True
解释: 你可以删除c字符。
class Solution {
public boolean validPalindrome(String s) {
if(s == null || s.length() == 0) return true;
int front = 0;
int rear = s.length()-1;
while(front< rear){
if(s.charAt(front) != s.charAt(rear)){
return vaildPalindHelper(s,front+1,rear) || vaildPalind(s,front,rear-1);
}
front++;
rear--;
}
return true;
}
public boolean vaildPalindHelper(String s,int front,int rear){
while(front < rear){
if(s.charAt(front) != s.charAt(rear)){
return false;
}
front++;
rear--;
}
return true;
}
}