#125 Valid Palindrome

来源:互联网 发布:sql 建表语句 编辑:程序博客网 时间:2024/05/13 09:41

题目:

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.

解题:

这里的回文指字母和数字,忽略标点等其他字符,且忽略大小写

另外根据题意(或面试官)看是否要考虑空字符串。

public class Solution {    public boolean isPalindrome(String s) {        if(s=="")return true;        s=s.toLowerCase();        int left=0,right=s.length()-1;        while(left < right){                 if((s.charAt(left)<'a'||s.charAt(left)>'z')&&(s.charAt(left)<'0'||s.charAt(left)>'9')){                         left++;                         continue;                 }                                      if((s.charAt(right)<'a'||s.charAt(right)>'z')&&(s.charAt(right)<'0'||s.charAt(right)>'9')){                         right--;                         continue;                 }                                  if(s.charAt(left)==s.charAt(right)){                     left++;                     right--;                 }                 else                     return false;             }             return true;         }}


0 0