125. Valid Palindrome

来源:互联网 发布:淘宝能贷款的口子 编辑:程序博客网 时间:2024/05/21 22:15

Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.

For example,
“A man, a plan, a canal: Panama” is a palindrome.
“race a car” is not a palindrome.

class Solution {public:    bool isPalindrome(string s) {        int size = s.length();        if(s.empty()) return true;        for(int l = 0, r = size - 1; l <= r; ){            if(isalnum(s[l]) && isalnum(s[r])){                if(tolower(s[l]) != tolower(s[r]))                    return false;                ++l; --r;            } else if(isalnum(s[l]))                --r;            else if(isalnum(s[r]))                ++l;            else {                ++l; --r;            }        }        return true;    }};
0 0