回文串

对一个字符串来说,从前往后读和从后往前读是一样的,这样的字符串叫做回文串。注意,空字符串也是回文串。

题目要求

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明:本题中,我们将空字符串定义为有效的回文串。

题目分析

根据题目要求,由于字符串中存在一些特殊符号,比如逗号、冒号等,在确认是否是回文串的过程中,这些特殊符号需要去除, 否则无法确认是否是回文串。 最后,我们需要两个指针,一前一后,同时往字符串的中间进行移动,每移动一位进行比较,如果相同就继续往下 比较,如果不同那么就跳出。

示例1:

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

示例2:

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

详细代码

class Solution:def isPalindrome(self, s: str) -> bool:s = s.lower()   # 统一转换为小写i = 0           # 左指针j = len(s)-1    # 右指针while i < j:    if s[i].isalnum() and s[j].isalnum():    # 判断是否是字母或数字,isalnum()函数见拓展if s[i] != s[j]:           # 左不等于右时return False          # 返回Falseelse:                      # 否则,继续遍历i += 1                 j -= 1elif not s[i].isalnum():       # 左指针的value不是字母或者数字时,右移i += 1else:                          # 右指针的value不是字母或者数字时,左移j -= 1 return True

验证

示例1:

输入:
solution = Solution()
s = "A man, a plan, a canal: Panama"
solution.isPalindrome(s)
输出:
True

示例2:

输入:
solution = Solution()
s = "race a car"
isPalindrome(s)
输出:
True

拓展

判断字符串是否全是数字,isdigit()函数

输入:
a = '123'
a.isdigit()    # 判断字符串a是否为数字
输出:
True

判断字符串是否全是字母,isalpha()函数

输入:
a = 'abc'
a.isalpha()    # 判断字符串a是否为字母
输出:
True

判断字符串是否全是数字和字母,isalnum()函数

输入:
a = '123abc'
a.isalnum()    # 判断字符串a是否为字母和数字
输出:
True

持续更新中。。。。。

LeetCode_125_Python_验证回文串相关推荐

  1. c语言判断字符串是不是回文_125. 验证回文串

    125. 验证回文串 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写. 说明:本题中,我们将空字符串定义为有效的回文串. 示例1: 输入: "A man, a ...

  2. 算法------验证回文串

    验证回文串给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写.说明:本题中,我们将空字符串定义为有效的回文串.示例 1:输入: "A man, a plan, a ...

  3. Python中判断字符是否为字母、数字、字母和数字组合,验证回文串(LeetCode125)

    判断字符串是否为字母.数字 函数str.isdigit()判断字符是否为数字,函数str.isalpha()判断字符是否为字母,函数isalnum()判断字符是否为数字字母组合. 上代码: str1 ...

  4. java实现回文验证_LeetCode 精选 TOP 面试题(Java 实现)—— 验证回文串

    文章目录 一.题目描述 1.1 题目 验证回文串 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写. 说明:本题中,我们将空字符串定义为有效的回文串. 示例 1: 输入: ...

  5. LeetCode:验证回文串【125】

    LeetCode:验证回文串[125] 题目描述 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写. 说明:本题中,我们将空字符串定义为有效的回文串. 示例 1: 输入: ...

  6. leetcode 高薪_LeetCode 第 125 号问题:验证回文串

    本文首发于公众号「五分钟学算法」,是图解 LeetCode 系列文章之一. 个人网站:https://www.cxyxiaowu.com 题目来源于 LeetCode 第 125 号问题:验证回文串. ...

  7. 力扣--125验证回文串/680验证回文字符串II

    125验证回文串 python代码 常规 def isPalindrome(s):if len(s) < 2:return TruesList = []s = s.lower()print(s) ...

  8. 双指针 -- 验证回文串

    传递门:验证回文串 思路: class Solution { public:bool check(char c){return c>='0'&&c<='9' || c> ...

  9. 回文串问题(leetcode 125. 验证回文串 c#)

    leetcode 125. 验证回文串 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写. 说明:本题中,我们将空字符串定义为有效的回文串. 示例 1: 输入: &quo ...

  10. Leetcode:125.验证回文串,917仅仅反转字母,387字符串的第一个唯一字符

    文章目录 125.验证回文串 题目描述 示例 思路分析 代码实现 917.仅仅反转字母 题目描述 示例 思路分析 代码实现 387.字符串的第一个唯一字符 题目描述 示例 思路分析 代码实现: 125 ...

最新文章

  1. 入门 | 无人驾驶汽车系统基本框架梳理
  2. 真AI用钱表达:这家少年班毕业生创办的AI公司三年就盈利,增速300%
  3. 关闭VMware 不用的服务
  4. 基于重力补偿的 PD 控制
  5. final关键字的几大特征
  6. 怎么看java中ide_如何在eclipse IDE中查看Java的字节码?
  7. 如何用SPSS做协方差分析?超详细图文教程
  8. 【PostgreSQL+PostGIS离线安装】2天的踩坑及问题解决经验分享(含安装文件postgresql-9.5.9+postgis-2.2.3+多个依赖及测试SQL)
  9. IP地址、子网掩码、网关、路由器等知识积累
  10. 深入浅出WPF之Binding的使用(一)
  11. 【android】读取/res/raw目录下的文件
  12. LeetCode199. Binary Tree Right Side View
  13. 博弈论与最优化的关系
  14. 【信息安全导论】HIT2022春季学期《信息安全导论》复习概要
  15. 记录贴:学习Andorid开发
  16. 区别: @Secured(), @PreAuthorize() 及 @RolesAllowed()
  17. 039.并发编程之线程
  18. windows不能同时连接有线和无线
  19. LSTM之父发文:2010-2020,我眼中的深度学习十年简史
  20. navicat 表合并查询_数据库两个表合并命令

热门文章

  1. 中基协会长洪磊:尽快制定大类资产配置管理办法 推非保本理财转型
  2. 超越极限:阿里云最新ASPLOS论文解读 | 凌云时刻
  3. 龙斗士显示网络和服务器,龙斗士热点问题_百田网帮助中心
  4. 【VRP】基于matlab模拟退火算法求解单中心的车辆路径规划问题【含Matlab源码 1340期】
  5. 【数字信号调制】基于matlab GUI AM+FM+DSB+SSB调制解调【含Matlab源码 1212期】
  6. 【运动学】基于matlab GUI地球自转模拟【含Matlab源码 1115期】
  7. 【图像修复】基于matlab GUI约束最小二乘方滤波图像复原【含Matlab源码 852期】
  8. 【交通标志识别】基于matlab GUI BP神经网络交通标志识别【含Matlab源码 718期】
  9. 计算机应用技术与英语相关性,浅析计算机应用的技术专业的计算机专业英语的教学改进.doc...
  10. 二项分布python实现_初级概率分布的Python实现