LeetCode 125. Valid Palindorme (验证回文字符串)
2018-04-15 06:28
351 查看
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.
题目标签:String, Two Pointers
题目给了我们一个string s, 让我们判断它是不是 palindorme。
对于s, 我们只需要比较 字母 和 数字。
设置一个 left = 0, right = s.length() -1,依次比较,其中遇到任何其他 char 就跳过,具体看code。
一开始不知道有 Character.isLetterOrDigit() ,还分别用了 letter 和 digit - -
Java Solution:
Runtime beats 80.01%
完成日期:03/07/2017
关键词:two pointers
关键点:skip all non-alphanumeric chars
class Solution { public boolean isPalindrome(String s) { // use two pointers int left = 0; int right = s.length() - 1; char [] char_arr = s.toCharArray(); while(left < right) { while(left < right && !Character.isLetterOrDigit(char_arr[left])) // if char is not letter or digit left++; while(left < right && !Character.isLetterOrDigit(char_arr[right])) // if char is not letter or digit right--; if(Character.toUpperCase(char_arr[left]) != Character.toUpperCase(char_arr[right])) return false; left++; right--; } return true; } }
参考资料:n/a
LeetCode 题目列表 - LeetCode Questions List
题目来源:https://leetcode.com/
相关文章推荐
- [LeetCode] Valid Palindrome II 验证回文字符串之二
- LeetCode 680. Valid Palindrome II (验证回文字符串 Ⅱ)
- [LeetCode] 680. Valid Palindrome II 验证回文字符串 II
- leetcode_java.T020_ValidParentheses 给定一个只包含(‘, ‘)’, ‘{‘, ‘}’, ‘[’ 和‘]’的字符串,验证它是否是有效的。
- [LeetCode] Valid Parenthesis String 验证括号字符串
- [LeetCode 125] - 验证回文(Valid Palindrome)
- leetcode(valid-palindrome)判断字符串是否是对称
- Leetcode 125. Valid Palindrome 回文验证 解题报告
- Palindrome Partitioning 分割字符串为回文@LeetCode
- valid-palindrome——判断带符号数字字母的字符串是否为回文
- LeetCode(Palindrome Partitioning) 将字符串分割成回文字符串
- [LeetCode] Valid Square 验证正方形
- [LeetCode] 678. Valid Parenthesis String 验证括号字符串
- LeetCode之“字符串”:最长回文子串
- leetcode最长回文字符串_动态规划
- leetcode题解-125. Valid Palindrome && 680. Valid Palindrome II
- leetcode125---Valid Palindrome(回文字符串)
- leetcode Valid Parentheses 验证括号
- 【LeetCode-面试算法经典-Java实现】【125-Valid Palindrome(回文字验证)】
- [LeetCode] Valid Parentheses 验证括号