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.
Note:
Have you consider that the string might be empty? This is a good question to ask during an interview.
For the purpose of this problem, we define empty string as valid palindrome.
Tomorrow is the May Day holiday, and it's suddenly a little lost. Every holiday is a bit embarrassing ~~ This is a very boring question. It fits the current mood, so I wrote it...
Class solution {public: bool ispalindrome (string s) {// start typing your C/C ++ Solution Below // do not write int main () function int p = 0, Q = S. size ()-1; while (P <q) {If (! (S [p]> = 'A' & S [p] <= 'Z ') | (s [p]> = 'A' & S [p] <= 'Z ') | (s [p]-'0'> = 0 & S [p]-'0' <= 9) {P ++; continue ;} if (! (S [Q]> = 'A' & S [Q] <= 'Z ') | (s [Q]> = 'A' & S [Q] <= 'Z ') | (s [Q]-'0'> = 0 & S [Q]-'0' <= 9) {q --; continue ;} if (s [p]! = S [Q] & S [p]-s [Q]! = 'A'-'A' & S [p]-s [Q]! = 'A'-'A') return false; P ++; q --;} return true ;}};