题目描述:
题解:
1.判断字符串s是否回文,i取值从0到len(s)//2+1,j=len(s)-i-1,如果每组s[i] s[j]都相等,则s回文。
2.如果某对s[i] s[j]不想等,判断去掉s[i]或s[j]之后,s是否回文。即s[i+1:j+1](去掉s[i])或者s[i:j](去掉s[j])是否回文。
class Solution: def validPalindrome(self, s: str) -> bool: def helper(s): for i in range(len(s)//2+1): if s[i]!=s[len(s)-i-1]: return False return True for i in range(len(s)//2+1): j = len(s)-i-1 if s[i]!=s[j]: return helper(s[i+1:j+1]) or helper(s[i:j]) return True