2025年--Lc159 --H125. 验证回文串(双指针)--Java版
·
1.题目

2.思路
通过正则表达式去除标点符号,再用toLowerCase()把字母转换成小写字母。最后当左指针不等于右指针的时候比较前后元素的值,用反证法,如果不想等直接return false,左指针左移,右指针右移。
3.代码实现
class Solution {
public boolean isPalindrome(String s) {
// String s1 = s.replaceAll("\\p{P}+", "");
String t = s.replaceAll("[^A-Za-z0-9]+", "").toLowerCase();
int left=0;
int right=t.length()-1;
while(left<right)
{
if(t.charAt(left)!=t.charAt(right))
return false;
left++;
right--;
}
return true;
}
}
更多推荐


所有评论(0)