0%

680. 验证回文字符串 Ⅱ

680. 验证回文字符串 Ⅱ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class Solution {
public:
bool validPalindrome(string s) {
int l = 0, r = s.size() - 1;
while(l < r)
{
if(s[l] != s[r])
return check(s, l + 1, r) || check(s, l, r - 1); // 删掉后分别检查是不是回文串
++l;
--r;
}
return true;
}
private:
bool check(string& s, int l, int r)
{
while(l < r && s[l] == s[r])
{
++l;
--r;
}
return l >= r;
}
};