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.
def isPalindrome(S): if len(S) == 1 or len(S) == 0: return True i = 0 j = len(S) - 1 while i < j: while i <j and S[i].isalnum() == False: i += 1 while i < j and S[j].isalnum() == False: j -= 1 if i < j and S[i].lower() != S[j].lower(): return False i += 1 j -= 1 return True print isPalindrome("aa.. b ./..,aa")
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.