125. Valid Palindrome

来源:互联网 发布:mac ae 2014破解 编辑:程序博客网 时间:2024/05/18 22:44

这里写图片描述

    bool isPalindrome(string s) {        if(s.size()==0) return true;        int left=0,right=s.size()-1;        while(left<=right){            if(isAphaNum(s[left])&&isAphaNum(s[right])){                if(to_upper(s[left])==to_upper(s[right]))                {                      left++;                right--;                 }else                    return false;            }else if(!isAphaNum(s[left])){                left++;            }else right--;        }        return true;    }    bool isAphaNum(char &ch){        if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')||(ch>='0'&&ch<='9'))            return true;        printf("false");        return false;    }    char to_upper(char c){        if(c>='a'&&c<='z'){            return c-'a'+'A';        }        return c;    }
    bool isPalindrome(string s) {        if(s.size()==0) return true;        int left=0,right=s.size()-1;        while(left<=right){            if(isAphaNum(s[left])&&isAphaNum(s[right])){               if((s[left]+32-'a')%32!=(s[right]+32-'a')%32)                    return false;                left++;                right--;            }else if(!isAphaNum(s[left])){                left++;            }else right--;        }        return true;    }    bool isAphaNum(char ch){        if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')||(ch>='0'&&ch<='9'))            return true;        return false;    }
    bool isPalindrome(string s) {        if(s.size()==0) return true;        int left=0,right=s.size()-1;        while(left<=right){            if(isalnum(s[left])&&isalnum(s[right])){               if((s[left]+32-'a')%32!=(s[right]+32-'a')%32)                    return false;                left++;                right--;            }else if(!isalnum(s[left])){                left++;            }else right--;        }        return true;    }

马拉车算法