Leetcode 125.验证回文串
1 题目描述(Leetcode题目链接)
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明:本题中,我们将空字符串定义为有效的回文串。
输入: "A man, a plan, a canal: Panama"
输出: true
2 题解
首先将所有字母都转换为大写或都转换为小写,再利用双指针首尾遍历,只判断字母和数字。
class Solution:
def isPalindrome(self, s: str) -> bool:
s = s.upper()
left, right = 0, len(s) - 1
while left <= right:
if not s[left].isalnum():
left += 1
continue
if not s[right].isalnum():
right -= 1
continue
if s[right] != s[left]:
return False
else:
right -= 1
left += 1
return True