125. 验证回文串
难度:简单
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
**说明:**本题中,我们将空字符串定义为有效的回文串。
示例 1:
输入: "A man, a plan, a canal: Panama"
输出: true
解释:"amanaplanacanalpanama" 是回文串
示例 2:
输入: "race a car"
输出: false
解释:"raceacar" 不是回文串
提示:
1 <= s.length <= 2 * 105
- 字符串
s
由 ASCII 字符组成
解法一:模拟
class Solution:
def isPalindrome(self, s: str) -> bool:
new_s = []
for c in s:
if '9' >= c >= '0':
new_s.append(c)
elif 'z' >= c.lower() >= 'a':
new_s.append(c.lower())
return new_s == new_s[::-1]
解法二:isalnum函数
class Solution:
def isPalindrome(self, s: str) -> bool:
s_list = "".join(c.lower() for c in s if c.isalnum())
return s_list == s_list[::-1]