码迷,mamicode.com
首页 > 编程语言 > 详细

Leetcode 125.验证回文串 By Python

时间:2018-09-21 23:06:40      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:git   type   比较   字符串   ali   提取   letter   ==   obj   

思路

显然一个字符串不止包括字母和数字字符,所以我们可以先提取出来我们要进行比较的字符

还有一个问题是,字母是分大小写的,我们要统一大写或者统一小写,就是规范化

代码

class Solution(object):
    def isPalindrome(self, s):
        """
        :type s: str
        :rtype: bool
        """
        letters = string.ascii_letters
        digits = string.digits
        s = s.lower()
        s = [i for i in s if i in letters or i in digits]
        return s[::-1] == s[:]     

反思

可以看出这个提取是稍微繁琐的,在看别人速度快的代码的时候看到可以这样提取

new_s = "".join([i for i in s if i.isalnum() or i.isalpha()]).lower()

改成这个语句之后效率可以得到有效的提升

Leetcode 125.验证回文串 By Python

标签:git   type   比较   字符串   ali   提取   letter   ==   obj   

原文地址:https://www.cnblogs.com/MartinLwx/p/9688637.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!