方法一:(两个指针,对称比较,过滤掉非字幕数字的字符进行判断,时间复杂度O(n))
class Solution {
public:
bool isPalindrome(string s) {
for(int i=0, j=int(s.length())-1; i<=j;){
if(!isalpha(s[i])&&!isdigit(s[i]))
i++;
else if(!isalpha(s[j])&&!isdigit(s[j]))
j--;
else if(s[i]==s[j]||tolower(s[i])==tolower(s[j])){
i++;
j--;
}
else
return false;
}
return true;
}
};
125 Valid Palindrome
最新推荐文章于 2020-05-27 12:11:01 发布