- 浏览: 183556 次
- 性别:
- 来自: 济南
文章分类
最新评论
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.
判断一个字符串是否为回文字符串,字符串中包含标点还有大小写的字母,我们可以先将字符串转换一下,用replaceAll方法去掉不用比较的字符,如何保留需要比较的字符我们用到正则表达式,处理之后在进行判断。代码如下:
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.
判断一个字符串是否为回文字符串,字符串中包含标点还有大小写的字母,我们可以先将字符串转换一下,用replaceAll方法去掉不用比较的字符,如何保留需要比较的字符我们用到正则表达式,处理之后在进行判断。代码如下:
public class Solution { public boolean isPalindrome(String s) { if(s == null) return true; String ss = s.replaceAll("[^0-9a-zA-Z]","").toLowerCase(); return isPalin(ss); } public boolean isPalin(String s) { int l = 0; int r = s.length() - 1; while(l < r) { if(s.charAt(l) != s.charAt(r)) return false; l ++; r --; } return true; } }
发表评论
-
498. Diagonal Traverse
2019-11-15 13:52 265Given a matrix of M x N eleme ... -
496 Next Greater Element I
2019-11-14 13:50 267You are given two arrays (witho ... -
Word Break II
2016-03-09 03:15 384Given a string s and a dictiona ... -
Insert Interval
2016-03-08 02:11 374Given a set of non-overlapping ... -
Merge Intervals
2016-03-07 05:25 497Given a collection of intervals ... -
Merge k Sorted Lists
2016-03-07 04:03 563Merge k sorted linked lists and ... -
Multiply Strings
2016-03-06 07:27 475Given two numbers represented a ... -
N-Queens II
2016-03-06 03:06 664Follow up for N-Queens problem. ... -
N-Queens
2016-03-06 02:47 469The n-queens puzzle is the prob ... -
First Missing Positive
2016-03-05 03:09 429Given an unsorted integer array ... -
Spiral Matrix
2016-03-04 03:39 575Given a matrix of m x n element ... -
Trapping Rain Water
2016-03-04 02:54 580Given n non-negative integers r ... -
Repeated DNA Sequences
2016-03-03 03:10 426All DNA is composed of a series ... -
Increasing Triplet Subsequence
2016-03-02 02:48 898Given an unsorted array return ... -
Maximum Product of Word Lengths
2016-03-02 01:56 930Given a string array words, fin ... -
LRU Cache
2016-02-29 10:37 602Design and implement a data str ... -
Super Ugly Number
2016-02-29 07:07 673Write a program to find the nth ... -
Longest Increasing Path in a Matrix
2016-02-29 05:56 842Given an integer matrix, find t ... -
Coin Change
2016-02-29 04:39 783You are given coins of differen ... -
Minimum Height Trees
2016-02-29 04:11 704For a undirected graph with tre ...
相关推荐
https://www.lintcode.com/problem/valid-palindrome/description 给定一个字符串,只考虑字母和数字,字母忽略大小写区别,忽略所有其他字符,问该字符串是否回文。直接对撞双指针,左指针持续右移直到遇到字母或...
python python_leetcode题解之125_Valid_Palindrome
javascript js_leetcode题解之125-valid-palindrome.js
合并排序数组, Valid Parentheses, 实现 strStr(), Set Matrix Zeroes, 搜索插入位置, Longest Consecutive Sequence, Valid Palindrome, 螺旋矩阵, 搜索一个二维矩阵, 旋转图像, 三角形, Distinct Subsequences ...
"Valid Palindrome"(有效的回文串)则需要理解双指针法和忽略特定字符的策略。 最后的暗黑版《LeetCode 刷题笔记 with Java 51-100(暗黑版).pdf》可能包含了一些高级解法或者优化后的实现,帮助开发者提升代码...
本题解集中关注的是LeetCode第125题——"验证回文串"(Valid Palindrome)。这道题目是面试中常见的算法问题,考察了程序员对字符串处理和双指针技巧的掌握。 回文串是指一个字符串从前往后读和从后往前读是一样的...
例如,“Wildcard Matching”和“Valid Palindrome II”这类题目要求考虑通配符或特殊字符的存在,增加了问题的复杂性。在处理这类问题时,了解API的使用、忽略字符大小写和字符编码差异是十分重要的。 最后,树...
3. **字符串处理**:Java中的String类是常考主题,如"Valid Palindrome"要求判断一个字符串是否为回文,这涉及字符串的反转和比较操作。 4. **排序与查找**:快速排序、归并排序、二分查找等经典算法经常出现在...
其中,第125题是“验证回文串”(Valid Palindrome),这是一道关于字符串处理的经典问题,尤其适合考察应聘者的双指针技巧。双指针是一种常见的算法思想,它在解决很多数组或字符串问题时能展现出高效性。 **问题...
4. Valid Palindrome:判断一个字符串是否为回文字符串,涉及到字符串的遍历和比较。 5. Implement strStr():实现strStr()函数,即在文本中查找模式串的出现,可以使用KMP算法。 6. Reverse Words in a String:...
#### 三、Valid Palindrome - **知识点:**双指针技术。 - **题目描述:**给定一个字符串,判断它是不是回文串。只考虑字母和数字字符,可以忽略字母的大小写。 - **应用场景:**字符串处理的基础问题,广泛应用于...
4. Valid Palindrome:判断一个字符串是否是回文,忽略大小写和非字母数字字符。 5. Implement strStr():实现字符串查找功能,返回子字符串在字符串中的起始索引。 6. Reverse Words in a String:翻转字符串中的...
例如 Leetcode 的 680 题 Valid Palindrome II(Easy),我们可以使用双指针来判断一个字符串是否为回文字符串。 在这个题目中,我们可以使用双指针指向字符串的头尾两个元素,一个指针从头向尾遍历,一个指针从尾...
- Valid Palindrome(验证回文串) - Implement strStr()(实现 strStr() 函数) - Reverse Words in a String(字符串中的单词翻转) - String to Integer (atoi)(字符串转换整数) - Longest Substring ...
1. **验证回文串**(Valid Palindrome) - 知识点:字符串处理,双指针法 - 解题思路:通过两个指针,一个从左向右,一个从右向左,比较字符是否相等。如果遇到不相等的字符,可以通过忽略大小写和非字母数字字符...
Palindrome Number #0035 - Search Insert Position #0058 - Length of Last Word #0066 - Plus One #0083 - Remove Duplicates from Sorted List #0118 - Pascal's Triangle #0121 - Best Time to Buy and Sell ...
- Valid Palindrome(回文字符串验证) - Longest Palindromic Substring(最长回文子串) - Space Replacement(URL化) - Wildcard Matching(通配符匹配) - Length of Last Word(最后一个单词的长度) - ...
...The number of questions is increasing recently. Here is the classification of all `468` questions. ...I'll keep updating for full summary and better solutions....|-----|---------------- | --------------- |...
- **有效回文串(Valid Palindrome)** - 判斷字符串是否為回文串。 - 忽略大小寫與非字母數字字符。 - **最長回文子串(Longest Palindromic Substring)** - 中心擴張法。 - 最長回文子串的求解策略。 - **空格...