Valid Palindrome

回文,先提取有效字符,之后进行前后项匹配

 1 class Solution {
 2 public:
 3     bool isPalindrome(string s) {
 4         vector<char> change;
 5         int size=s.length();
 6         if(size==0)
 7             return true;
 8         for(int i=0;i<size;i++)
 9         {
10             char c=s.at(i);
11             if((c>='a'&&c<='z')||c>='0'&&c<='9')
12             {
13                 change.push_back(c);
14             }
15             if(c>='A'&&c<='Z')
16             {
17                 c+=('a'-'A');
18                 change.push_back(c);
19             }
20         }
21         int flag=1;
22         size=change.size();
23         for(int i=0;i<size/2;i++)
24         {
25             if(change[i]!=change[size-1-i])
26             {
27                 flag=0;
28                 break;
29             }
30         }
31         if(flag==1)
32             return true;
33         return false;
34     }
35 };

 

posted @ 2015-07-07 22:18  阿怪123  阅读(131)  评论(0)    收藏  举报