码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode OJ - Valid Palindrome

时间:2014-05-01 01:45:34      阅读:375      评论:0      收藏:0      [点我收藏+]

标签:com   http   blog   style   class   div   img   code   c   java   log   

这道题挺简单的,但是需要细心。

最好的方法是先对string做预处理,然后再判断是否是回文。

下面是AC代码:

bubuko.com,布布扣
 1 /**
 2      * Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.
 3      * @param s
 4      * @return
 5      */
 6     public boolean isPalindrome(String s){
 7         String pre = preProcess(s);
 8         char[] sw = pre.toCharArray();
 9         if(pre==null || pre.length()<=1 )
10             return true;
11         int i=0;
12         int j=pre.length()-1;
13         while(i<=j){
14             if(sw[i]!=sw[j])
15                 return false;
16             i++;
17             j--;
18         }
19         return true;
20     }
21     /**
22      * pre-processing the string, remove all non-isAlphanumeric
23      * and change all to lower
24      * @param s
25      * @return
26      */
27     private String preProcess(String s){
28         
29         StringBuffer sb = new StringBuffer();
30         for(int i=0;i<s.length();i++)
31             if(isAlphanumeric(s.charAt(i)))
32                 sb.append(s.charAt(i));
33         return sb.toString().toLowerCase();
34     }
35     /**
36      * make decision if a character is a alphanumeric
37      * @param c
38      * @return
39      */
40     private boolean isAlphanumeric(char c){
41         if(c>=‘a‘ && c<=‘z‘ || c>=‘A‘ && c<=‘Z‘ || c>=‘0‘&& c<=‘9‘)
42             return true;
43         return false;
44     }
bubuko.com,布布扣

 

LeetCode OJ - Valid Palindrome,布布扣,bubuko.com

LeetCode OJ - Valid Palindrome

标签:com   http   blog   style   class   div   img   code   c   java   log   

原文地址:http://www.cnblogs.com/echoht/p/3701100.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!