LeetCode刷题笔记:算法面试题汇总-字符串(1)-验证回文串

1.验证回文串

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。

说明:
本题中,我们将空字符串定义为有效的回文串。

示例一:

输入: "A man, a plan, a canal: Panama"
输出: true

示例二:

输入: "race a car"
输出: false

本题首先对特殊字符进行忽略。然后设置前后两个指针,以此判断前后指针是否相同。相同进行下一次判断,不同直接返回False,直到前后指针相等,返回True。代码如下:

class Solution(object):
    def isPalindrome(self, s):
        """
        :type s: str
        :rtype: bool
        """
        s = s.lower()
        val ='0123456789abcdefghijklmnopqrstuvwxyz'
        tmp = ''
        for x in s:
            if x in val:
                tmp+=x
        s=tmp
        l,r=0,len(s)-1
        while l

点赞

发表评论

[2;3Rer>