AC代码(C++):
思路:
1.去除不合法的字符,题目中只有大小写字母和数字为合法的字符。
2.将大写统一处理为小写,方便处理。
3.进行回文判断。
class Solution {
public:
bool isPalindrome(string s) {
string t;
for(int i=0; i<s.length(); ++i){
if(isalpha(s[i]) || isdigit(s[i]))
t += s[i];
}
for(int i=0; i<t.length(); ++i){
if(isupper(t[i]))
t[i] ^= 32;
}
for(int i=0; i<t.length()/2; ++i){
if(t[i]!=t[t.length()-1-i])
return false;
}
return true;
}
};