问题描述:
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.
代码:
import java.util.Vector; public class Valid_Palindrome { public boolean isPalindrome(String s) { s = s.toLowerCase(); Vector<Character> vector = new Vector<Character>(); for(int i = 0; i< s.length(); i++){ Character ch = s.charAt(i); if((ch >='a' && ch <='z' )||(ch >='0' && ch <='9')) vector.add(ch); } if(vector.size() == 0) return true; int size = vector.size(); for(int i=0; i< size/2; i++){ if(vector.get(i) != vector.get(size-1-i)) return false; } return true; } }
原文地址:http://blog.csdn.net/chenlei0630/article/details/40456905