2020年6月19日 验证回文串 isPalindrome
默认格式:
class Solution {
public boolean isPalindrome(String s) {
}
}
解题思路:
这道题也没啥复杂的,也想不到什么取巧的。一般来说这种回文有两种解决思路,用栈,根据字符串的长度n入栈n/2个元素。
但是在这道题中不太适用,因为会有标点符号来干扰长度,所以这里使用另一种双指针的算法,从头部和尾部向中间开始收缩,直到首尾坐标相等。
奇葩的错误:
本来挺简单的一道题目,因为要考虑许多特殊的情况,所以错了好多次,都是没有想到一些细节的部分。
比如上面这个地方,他是0而不是O,然后我仔细看了题目才发现,数字也是属于计算的范围内的。重新给字符增加约束。
public boolean isPalindrome(String s) {
//算了,直接开外挂
s=s.toUpperCase