leetcode--Valid Palindrome
2015-06-06 00:03
246 查看
Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.
For example,
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) {
int low = 0;
int high = s.length()-1;
while(low<high){
if(!check(s.charAt(low))){
low++;continue;
}else if(!check(s.charAt(high))){
high--;continue;
}else{
if(s.charAt(low)!=s.charAt(high)&&s.charAt(low)-s.charAt(high)!=32
&& s.charAt(high)-s.charAt(low)!=32){
return false;
}else{
low++;high--;
}
}
}
return true;
}
public boolean check(char c){
if(c>='a'&&c<='z' || c>='A'&&c<='Z' || c>='0'&&c<='9')
return true;
return false;
}
}
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) {
int low = 0;
int high = s.length()-1;
while(low<high){
if(!check(s.charAt(low))){
low++;continue;
}else if(!check(s.charAt(high))){
high--;continue;
}else{
if(s.charAt(low)!=s.charAt(high)&&s.charAt(low)-s.charAt(high)!=32
&& s.charAt(high)-s.charAt(low)!=32){
return false;
}else{
low++;high--;
}
}
}
return true;
}
public boolean check(char c){
if(c>='a'&&c<='z' || c>='A'&&c<='Z' || c>='0'&&c<='9')
return true;
return false;
}
}
相关文章推荐
- GDI+ - 使用PNG图片打造不规则窗口
- 团队分工
- 在Linux系统的服务器上隐藏PHP版本号的方法
- JavaScript中使用concat()方法拼接字符串的教程
- JavaScript中的lastIndexOf()方法使用详解
- JavaScript中操作字符串之localeCompare()方法的使用
- JavaScript中String.match()方法的使用详解
- JavaScript中的replace()方法使用详解
- 简介JavaScript中search()方法的使用
- JavaScript中的slice()方法使用详解
- JavaScript中的substr()方法使用详解
- 简介JavaScript中substring()方法的使用
- JavaScript中的toLocaleLowerCase()方法使用详解
- 配置mysql5.5主从服务器(转)
- 简介JavaScript中toUpperCase()方法的使用
- ubuntu14.04如何安装可视化svn
- 学习笔记:MFC实现http协议传输图片和文本
- HDU 2001 计算两点间的距离
- 几个有彩蛋的网站
- css3的伪类before和after