题目:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明:本题中,我们将空字符串定义为有效的回文串。
示例 1:
- 输入: "A man, a plan, a canal: Panama"
- 输出: true
- 解释:"amanaplanacanalpanama" 是回文串
示例 2:
- 输入: "race a car"
- 输出: false
- 解释:"raceacar" 不是回文串
提示:
- 1 <= s.length <= 2 * 105
- 字符串 s 由 ASCII 字符组成
题目分析:
fro循环遍历字符串s,取出字符串中的数字,将字符串中的字母转换为小写再取出,组成新的字符串,如果新字符串的正序和倒序相同,则返回True。
class Solution:
def isPalindrome(self, s: str) -> bool:
tmp = ""
for i in s:
if i.isdigit():
tmp += i
if i.isalpha():
tmp += i.lower()
if tmp == tmp[::-1]:
return True
return False
题目来源:
作者:力扣 (LeetCode)
链接:https://leetcode-cn.com/leetbook/read/top-interview-questions-easy/xne8id/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。