LCR019.验证回文串II
链接:LCR019.验证回文串II
难度:Easy
标签:贪心、双指针、字符串
简介:给定一个非空字符串 s,请判断如果 最多 从字符串中删除一个字符能否得到一个回文字符串。
题解 1 - cpp
- 编辑时间:2022-02-18
- 执行用时:48ms
- 内存消耗:19MB
- 编程语言:cpp
- 解法介绍:双指针遍历。
class Solution {
   public:
    bool check(string &s, int l, int r) {
        while (l < r) {
            if (s[l] != s[r]) return 0;
            l++;
            r--;
        }
        return 1;
    }
    bool validPalindrome(string s) {
        int l = 0, r = s.size() - 1;
        for (int l = 0, r = s.size() - 1; l < r; l++, r--) {
            if (s[l] == s[r])
                continue;
            else
                return check(s, l, r - 1) || check(s, l + 1, r);
        }
        return 1;
    }
};