Problem
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.
Algorithm
s.toLowerCase() first to ignore cases.
Write a helping method isAlphaNumeric to reduce code.
Write two helping methods to find the next and previous alphanumeric character's index, which is easier to read.
No comments:
Post a Comment