美文网首页
[leetcode]125. Valid Palindrome

[leetcode]125. Valid Palindrome

作者: SQUA2E | 来源:发表于2019-07-27 12:37 被阅读0次

    题目

    判断是否是回文

    Input: "A man, a plan, a canal: Panama"
    Output: true
    

    分析

    题目并不是很难,难点在于处理字符串去除里面的符号和空格。
    首先可以考虑用 isalnums()方法:

    str.isalnum() // 如果字符串只由数字和字母组is成,返回True
    str.isalpha()    // 如果只由字母组成,返回True
    

    其次,也也可以考虑用正则表达式:

    str.re.sub(r"[^a-zA-Z0-9]", "",str)
    

    注意,这里还要用lower()将大写转为小写.

    代码

    class Solution:
        def isPalindrome(self, s: str) -> bool:
            s = ''.join(e.lower() for e in s if e.isalnum())
            return s == s[::-1]
            // 反转列表也可以用reversed()
    

    相关文章

      网友评论

          本文标题:[leetcode]125. Valid Palindrome

          本文链接:https://www.haomeiwen.com/subject/zbosrctx.html