1、双指针 左右对比
这里主要学习一下Python3中字符串相关函数
str.lower() # 所有大写字符转换为小写 str.isalnum() # 检测字符串是否由字母和数字组成 ord(c) # 返回对应的 ASCII 数值
class Solution:
def isPalindrome(self, s: str) -> bool:
s = s.lower()
size = len(s)
left = 0
right = size-1
# 去掉非空格字母以及数字
while left < right:
if not s[right].isalnum():
right -= 1
continue
if not s[left].isalnum():
left += 1
continue
if s[left] != s[right]:
return False
left += 1
right -= 1
return True
此外的方法:反转