Valid Palindrome

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

相关的python代码:

class Solution:
    # @param s, a string
    # @return a boolean
    def isPalindrome(self, s):
        if s is "":
            return True

        s = filter(lambda c: c.isalpha() or c.isdigit(), s) 
        s = s.upper()

        for i in range(len(s) / 2):
            if s[i] != s[len(s) - i - 1]:
                return False

        return True

你可能感兴趣的:(Valid Palindrome)