【Leetcode】125. 验证回文串(Valid Palindrome)
作者:互联网
一、题目
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
二、示例
示例 1:
输入: “A man, a plan, a canal: Panama”
输出: true
示例 2:
输入: “race a car”
输出: false
说明:
本题中,我们将空字符串定义为有效的回文串。
三、解法
解法1 提前处理
class Solution:
def isPalindrome(self, s: str) -> bool:
s = [x.lower() for x in s if x.isalnum()]
left = 0
right = len(s) - 1
while left < right:
if s[left] != s[right]:
return False
left += 1
right -= 1
return True
解法2 临时处理
class Solution:
def isPalindrome(self, s: str) -> bool:
left = 0
right = len(s) - 1
while left < right:
if not s[left].isalnum():
left += 1
continue
if not s[right].isalnum():
right -= 1
continue
if s[left].lower() != s[right].lower():
return False
left += 1
right -= 1
return True
标签:lower,Palindrome,return,isalnum,示例,Valid,right,125,left 来源: https://blog.csdn.net/Xiao_Spring/article/details/115427241