1. 程式人生 > >LeetCode125. 驗證迴文串

LeetCode125. 驗證迴文串

給定一個字串,驗證它是否是迴文串,只考慮字母和數字字元,可以忽略字母的大小寫。

說明:本題中,我們將空字串定義為有效的迴文串。

class Solution {
public:
    bool isPalindrome(string s) {
        for(string::iterator iter1 = s.begin(),iter2 = s.end()-1; iter2-iter1 > 0; )
        {
            if(isdigit(*iter1)||isalpha(*iter1))
            {
                if(isdigit(*iter2)||isalpha(*iter2))
                {
                    if(toupper(*iter1) == toupper(*iter2))
                    {
                        ++iter1;
                        --iter2;
                        continue;
                    }
                    else
                        return false;
                }
                else
                {
                    --iter2;
                    continue;
                }
                    
            }
            else
            {
                if(isdigit(*iter2)||isalpha(*iter2))
                {
                    ++iter1;
                    continue;
                }
                else
                {
                    ++iter1;
                    --iter2;
                    continue;
                }
            }
            
        }
        return true;
    }
};