当前位置: 首页 > news >正文

【leetcode】125.验证回文串

验证回文串

    • 题目
    • 题解
      • 1. 筛选+判断
      • 2. 双指针

题目

125.验证回文串

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

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

给你一个字符串 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 是一个空字符串 “” 。
由于空字符串正着反着读都一样,所以是回文串。

题解

1. 筛选+判断

class Solution(object):def isPalindrome(self, s):""":type s: str:rtype: bool"""sgood = "".join(ch.lower() for ch in s if ch.isalnum())return sgood == sgood[::-1]

2. 双指针

class Solution(object):def isPalindrome(self, s):""":type s: str:rtype: bool"""# 双指针n =len(s)left, right = 0, n-1while left < right:while left < right and not s[left].isalnum():left += 1while left < right and not s[right].isalnum():right -= 1if left < right:if s[left].lower() != s[right].lower():return Falseleft, right = left + 1, right - 1return True

相关文章:

  • Spring Boot 3 集成 MyBatis 连接 MySQL 数据库
  • Unity 服务器交互开发指南
  • 【第一章:人工智能基础】02.数据处理及可视化-(3)可视化工具与技术
  • java实现RabbitMQ消息发送和接收功能(包含测试)
  • 代码随想录训练营二十六天| 654.最大二叉树 617.合并二叉树 700.二叉搜索树的搜索 98.验证二叉搜索树
  • ttyd:安全地通过网络共享您的 Linux 终端
  • 上传一个新菜谱-第一部分
  • 深入解析Docker网桥模式:从docker0到容器网络的完整通信链路
  • 人机交互设计知识点总结
  • 控制器轨迹生成
  • 如何设计一个用于大规模生产任务的人工智能AI系统
  • 【轨物交流】云南科情院赴杭“取经”数字赋能 调研轨物科技探路创新驱动
  • SAP学习笔记 - 开发31 - 前端Fiori开发 Device Adaptation(设备自适应)
  • 【实战指南】前端项目Nginx配置全流程:从打包部署到解决跨域/路由循环问题
  • 零基础学前端-传统前端开发(第三期-CSS介绍与应用)
  • JavaSE-Java简史
  • HTML5 定位网页元素
  • 火山引擎 veFuser:面向扩散模型的图像与视频生成推理服务框架
  • SQL 注入:iBatis与修复
  • 【python】预测投保人医疗费用,附insurance.csv数据集
  • 网站开发计算机配置/宁波最好的推广平台
  • 个人建站的app哪里有卖/外链系统
  • 做黑网站赚钱吗/网页设计一般用什么软件
  • 福田我要做网站优化比较好/公司的seo是什么意思
  • 淘宝客网站可以做分销吗/网络推广外包想手机蛙软件
  • 更改网站主题/友情连接