首页 > 代码库 > Valid Palindrome
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.
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 { /** * 判断某位是否是alphanumeric (字母or数字) * */ public boolean isAlphanumeric(char c){ if(c>=‘a‘&&c<=‘z‘){ return true; } if(c>=‘0‘&&c<=‘9‘){ return true; } if(c>=‘A‘&&c<=‘Z‘){ return true; } return false; } public boolean isPalindrome(String s) { List<String> list1 = new ArrayList<String>(); char[] list2 = s.toCharArray(); int size2 = list2.length; for(int i=0;i<size2; i++){ if(isAlphanumeric(list2[i])){ String temp = String.valueOf(list2[i]).toLowerCase();//统一转换成小写字母 list1.add(temp); } } int size1 = list1.size(); if(size1==0){ return true; } for(int j=0;j<size1/2;j++){ if(!list1.get(j).equals(list1.get(size1-1-j))){ return false; } } return true; }}
Valid Palindrome
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。