力扣小白刷题之680题验证回文字符串

题目描述

给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。
注意:
字符串只包含从 a-z 的小写字母。字符串的最大长度是50000。

方法

双指针遍历
本题的关键是处理删除一个字符。在使用双指针遍历字符串时,如果出现两个指针指向的字符不相等的情况,就试着删除一个字符,再判断删除完之后的字符是否是回文字符串。
在判断是否为回文字符串时,不需要判断整个字符串,因为左指针左边和右指针右边的字符之前已经判断过具有对称性质,所以只需要判断中间的子字符串即可。
在试着删除一个字符时,既可以删除左指针指向的字符,也可以删除右指针指向的字符。

代码

力扣小白刷题之680题验证回文字符串

运行时的一个错误

‘\uff01’ 不小心用了中文的 ’!‘。