首页 力扣-双指针系列
文章
取消

力扣-双指针系列

125. 验证回文串 - 力扣(LeetCode)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution {
public:

    bool isPalindrome(string s) {
        int left = 0,right = s.size() - 1;
        while(left <= right)
        {
            while(left < s.size() && !isalnum(s[left])) left++;
            while(right >= 0 && !isalnum(s[right]))right--;

            if(left<= right && tolower(s[left]) != tolower(s[right])) return false;
            left++;
            right--;
        }
        return true;
    }
};

    经典的双指针,需要注意的是两个指针的边界,一个小于s.size(),一个要大于0,而且在循环内注意保持left<=right

本文由作者按照 CC BY 4.0 进行授权