VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > python入门教程 >
  • 125验证回文串

# 利用双指针,一次遍历,求出结果
class Solution:
    def isPalindrome(self, s: str) -> bool:
        # 定义变量,接收字符串的长度
        length = len(s)
        # 长度小于等于1直接返回真
        if length <= 1:return True
        # 定义两个指针, 分别指向字符串头和尾
        index1,index2 = 0,length - 1
        while index1 <= index2:
            # 判断字符是否为字母或者数字
            if not s[index1].isalnum():
                index1 += 1
                continue
            if not s[index2].isalnum():
                index2 -= 1
                continue
            # 判断两个字符是否相同
            if s[index1].lower() != s[index2].lower():
                return False
            index1 += 1
            index2 -= 1
        return True

A = Solution()
print(A.isPalindrome("A man, a plan, a canal: Panama"))
print(A.isPalindrome(""))
print(A.isPalindrome("qq"))
print(A.isPalindrome("race a car"))


 
出处:https://www.cnblogs.com/cong12586/p/13236626.html


相关教程