思路:
- 开始想的是先把特殊符号去掉,但是超时了。事实上直接在遍历中处理就行了。参考
class Solution {
public:
bool isPalindrome(string s) {
int left = 0, right = s.length()-1;
while(left < right){
if(!isalnum(s[left])) left++;
else if(!isalnum(s[right])) right--;
else if(tolower(s[left]) != tolower(s[right])) return false;
else{
left++;
right--;
}
}
return true;
}
};
tolower:http://baike.baidu.com/item/tolower?fr=aladdin
transform:http://blog.csdn.net/jerryjbiao/article/details/7523110