LeetCode 125 Valid Palindrome
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 125 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.
思路:
建立一个StringBuffer, 检查字符串,将字母与数字放入StringBuffer中,检查是否为回文构型。
解法:
1 public class Solution 2 { 3 public boolean isPalindrome(String s) 4 { 5 if(s == null || s.length() == 0 || s.length() == 1) 6 return true; 7 8 StringBuffer strbuf = new StringBuffer(); 9 10 for(int i = 0; i < s.length(); i++) 11 { 12 char ch = s.charAt(i); 13 14 if(Character.isLetter(ch) || Character.isDigit(ch)) 15 strbuf.append(Character.toUpperCase(ch)); 16 } 17 18 int left = 0; 19 int right = strbuf.length() - 1; 20 while(left < right) 21 { 22 if(strbuf.charAt(left) != strbuf.charAt(right)) 23 return false; 24 left++; 25 right--; 26 } 27 28 return true; 29 } 30 }
以上是关于LeetCode 125 Valid Palindrome的主要内容,如果未能解决你的问题,请参考以下文章
leetcode 125. Valid Palindrome
Leetcode 125. Valid Palindrome