首页 > 其他分享 >125. 验证回文串

125. 验证回文串

时间:2023-10-23 15:22:28浏览次数:29  
标签:字符 验证 字母 示例 125 字符串 true 回文

目录

题目

  • 如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串 。

    字母和数字都属于字母数字字符。

    给你一个字符串 s,如果它是 回文串 ,返回 true ;否则,返回 false 。

示例 1:

入: s = "A man, a plan, a canal: Panama"
输出:true
解释:"amanaplanacanalpanama" 是回文串。

示例 2:

输入:s = "race a car"
输出:false
解释:"raceacar" 不是回文串。

示例 3:

输入:s = " "
输出:true
解释:在移除非字母数字字符之后,s 是一个空字符串 "" 。
由于空字符串正着反着读都一样,所以是回文串。

法一、切片技巧

class Solution:
    def isPalindrome(self, s: str) -> bool:
        s = s.lower()#转小写
        s = ''.join(c for c in s if c.isalnum())#遍历字符串s中的字符c,如果c是字母或者数字就加入新的字符串中
        s1 = s[::-1]
        return s==s1

法二、双指针

class Solution:
    def isPalindrome(self, s: str) -> bool:
        # 去掉空格和标点符号,并转换为小写
        s = "".join(c.lower() for c in s if c.isalnum())
        i=0
        j=len(s)-1
        while(i<j):
            if s[i] == s[j]:

                i += 1
                j -= 1
            else:
                return False
        return True

标签:字符,验证,字母,示例,125,字符串,true,回文
From: https://www.cnblogs.com/lushuang55/p/17782563.html

相关文章

  • T125847 【模板】动态开点线段树
    \(T125847\)题目背景注意:请注意时间限制是800ms请使用较快的输入输出注意:空间限制是128MB请不要开longlong时限在std的2.5倍以上题目描述有一个有\(1000000000\)个数的初始值全为\(0\)的区间,你要进行两种操作:将某区间每一个数加上 \(x\)求出某区间每一个数的和输入格式第一行包......
  • P1253 扶苏的问题
    \(P1253\)一、题目描述给定一个长度为\(n\)的序列\(a\),要求支持如下三个操作:给定区间\([l,r]\),将区间内每个数都修改为\(x\)。给定区间\([l,r]\),将区间内每个数都加上\(x\)。给定区间\([l,r]\),求区间内的最大值。输入格式第一行是两个整数,依次表示序列的长度\(n\)和操......
  • java中使用Graphics绘制图形验证图片,为什么图中的文字没有呈现?
       项目中做了一个图形验证的功能。可选择图形中的文字,想出现的效果如上。图形上有文字。而在实际做的过程中,发到测试环境linux系统上去之后,是下面的情况: 只有图,没有文字!于是问了问度娘,说是字体的原因。项目中使用了linux中没有的字体会导致上图的问题。但我是使用了......
  • 得到 K 个半回文串的最少修改次数
    给你一个字符串s和一个整数k,请你将s分成k个子字符串,使得每个子字符串变成半回文串需要修改的字符数目最少。请你返回一个整数,表示需要修改的最少字符数目。1.动态规划classSolution{public:intminimumChanges(strings,intk){intn=s.size()......
  • web基础漏洞-验证码爆破
    1、介绍验证码爆破,攻击者可以持续请求验证,从而获取正确验证码。2、防护(1)限制验证码有效时间如果设置相对较长的验证码有效时间,那么攻击者就可以用较低的频率爆破。反之,验证码有效时间相对较短,则对爆破的频率提出高要求,这既考验攻击者的硬件和软件,也考验网络传输和服务端压力......
  • 1253: 统计字符出现的频度
    1253:统计字符出现的频度题目描述写一个算法统计在输入字符串中各个不同字符出现的频度并将结果输出(字符串中的合法字符为A-Z之间的26个字母和0-9之间的10个数字)。输入多组数据,每组数据有一行,为待统计字符频度的字符串。当字符串为“0”时,输入结束。输出对于每组数据输出......
  • Vue验证码模块
    一个普通图形验证码的模块,使用方式如下: 导入模块importrandomfrom'@/util/VerificationCode'使用方式this.randomObj=random({id:'random',api:{url:'/api/getCode',headers:{'Content-Type':'applica......
  • ThinkPHP的验证码,一上线就不显示的问题
    ThinkPHP的验证码,一上线就不显示的问题找到你的验证码的控制器具体文件路径(下面是我的)然后就是加上一句话就OK了--->ob_clean();我的线上项目的验证码就正常了找到你的验证码的控制器具体文件路径(下面是我的)vendor/topthink/think-captcha/src/CaptchaController.php然后就是加......
  • C# 验证decimal 小数点以及前几位后几位
    publicclassCustomRadixPointAttribute:ValidationAttribute{privatereadonlyint_index;publicCustomRadixPointAttribute(intindex){_index=index;}///publicoverrideboolIsValid(object?value){if(......
  • 图片验证码识别网站【汇总】
    收集的一些识别图片字符的网站(可能要收费)图鉴网:http://www.ttshitu.com/超级鹰:https://www.chaojiying.com/参考、来源:《路飞-爬虫三天工作坊-Day2-苑老师-2023-09-26》03:59《Python3网络爬虫开发实战第2版》崔庆才P317......