leetcode 125 Valid Palindrome

给串字符串,忽略大小写,只关注数字和字母,判定是否回文。

bool isPalindrome(string s) {        
    int size = s.size();
    
    int start = 0;
    int end = size - 1;
    while (start < end) {
        char l = change(s[start]);
        char r = change(s[end]);
        
        if (l && r && l != r)
            return false;
        
        if (!l || r)
            start++;
        if (l || !r)
            end--;
    }
    return true;
}

char change(char c) {
    if (c >= 65 && c <= 90)
        return c + 32;
    if (c >= 97 && c <= 122)
        return c;
    if (c >= 48 && c <= 57)
        return c;
    return 0;
}

 

posted on 2018-01-25 00:20  willaty  阅读(97)  评论(0编辑  收藏  举报

导航