Given a non-empty string s, you may delete at most one character. Judge whether you can make it a palindrome.

Example 1:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
Input: "aba" Output: True

Example 2:

Input: "abca" Output: True Explanation: You could delete the character 'c'.

Note:

  1. The string will only contain lowercase characters a-z. The maximum length of the string is 50000.
class Solution {     public boolean validPalindrome(String s) {         int l = 0;         int r = s.length() - 1;         while (l < r) {             if (s.charAt(l) != s.charAt(r))                 return isPalindrome(s, l, r - 1) || isPalindrome(s, l + 1, r); //如果出现不想同的情况,开始处加一或者末尾减一                                                                                             l++;             r--;         }         return true;              }          private boolean isPalindrome(String s, int start, int end) { //判断是不是回文序列         while (start < end) {             if (s.charAt(start) == s.charAt(end)) {                 start++;                 end--;             }             else                  return false;                     }         return true;     } }
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄