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.

 

 1 public class Solution {
 2     public boolean isPalindrome(String s) {
 3         int len = s.length();
 4         if(len<=1) return true;
 5         s = s.toLowerCase();
 6         int start = 0;
 7         int end = len-1;
 8         while(start<end){
 9             if(!check(s.charAt(start))) start++;
10             else if(!check(s.charAt(end))) end--;
11             else if(s.charAt(start)==s.charAt(end)){start++; end--;}
12             else return false;
13         }
14         return true;
15     }
16     public boolean check(char a){
17         if(a<='z' && a>='a' || a<='9' && a>='0'){
18             return true;
19         }
20         else return false;
21     }
22 }
View Code

 

 

 

posted @ 2014-02-06 15:04  krunning  阅读(217)  评论(0编辑  收藏  举报