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

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

给你一个字符串 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
{
public:bool isPalindrome(string s){// 去除非字母非数字s.erase(std::remove_if(s.begin(), s.end(), [](char c){ return !std::isalnum(c); }),s.end());// 特殊情况if (s.empty() || s.size() == 1)return true;for (int i = 0, j = s.size() - 1;; ++i, --j){if (s[i] >= 'A' && s[i] <= 'Z'){s[i] += 32;}if (s[j] >= 'A' && s[j] <= 'Z'){s[j] += 32;}if (s[i] == s[j]){}else{return false;}// 全部判断完成if (i == j - 1 || i == j - 2){return true;}}return false;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/90969.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/90969.shtml
英文地址,请注明出处:http://en.pswp.cn/web/90969.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式学习日志(十)

10 学习指针1 指针核心定义与本质1.1 指针与指针变量1、指针即地址&#xff0c;指针变量是存放地址的变量&#xff0c;其大小与操作系统位数相关&#xff1a;64 位系统中占 8 字节&#xff0c;32 位系统中占 4 字节。2、指针的核心功能是通过地址间接访问目标变量&#xff0…

Anaconda创建环境报错:CondaHTTPEFTOT: HTTP 403 FORBIDDEN for url

一、快速解决方案这类报错的原因通常是由于 conda 无法访问镜像源或权限被服务器拒绝&#xff0c;以下是常见原因和对应的解决方案&#xff1a;检查镜像源拼写是否正确conda config --show channels清华源镜像示例如果不正确&#xff0c;先清除旧配置del %USERPROFILE%\.condar…

亚马逊地址关联暴雷:新算法下的账号安全保卫战

2025年Q3&#xff0c;上千个店铺因共享税代地址、海外仓信息重叠等问题被批量冻结&#xff0c;为行业敲响了“精细化合规”的警钟。事件复盘&#xff1a;地址成为关联风控的“致命开关”税代机构违规引发“多米诺效应”事件的导火索指向税代机构“saqibil”&#xff0c;其为降低…

在本地环境中运行 ‘dom-distiller‘ GitHub 库的完整指南

在本地环境中运行 ‘dom-distiller’ GitHub 库的完整指南 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家&#xff0c;觉得好请收藏。点击跳转到网站。 1. 项目概述 ‘dom-distiller’ 是一个用于将网页…

11. isaacsim4.2教程-Transform 树与Odometry

1. 前言学习目标在本示例中&#xff0c;你将学习如何&#xff1a;使用 TF 发布器将相机作为 TF 树的一部分发布在 TF 上发布机械臂&#xff0f;可动结构&#xff08;articulation&#xff09;的树状结构发布里程计&#xff08;Odometry&#xff09;消息开始之前前置条件已完成 …

安宝特新闻丨安宝特与Logivations正式建立合作伙伴关系,共筑物流新未来

近日&#xff0c;安宝特与物流创新企业Logivations签署合作协议&#xff0c;双方将深度融合技术专长&#xff0c;共同为客户提供高效、精准的智能物流解决方案&#xff0c;助力企业实现从人工巡检到智能管控的跨越式升级。 关于Logivations Logivations是一家深耕物流与供应链…

第三阶段—8天Python从入门到精通【itheima】-139节(pysqark实战-前言介绍)

目录 139节——pysqark实战-前言介绍 1.学习目标 2.spark是什么 3.如下是详细介绍 PySpark 的两种使用方式&#xff0c;并提供具体的代码示例【大数据应用开发比赛的代码熟悉如潮水一般冲刷我的记忆】&#xff1a; 一、本地模式&#xff08;作为 Python 第三方库使用&#…

redis数据库的四种取得 shell方法

Redis作为高性能内存数据库&#xff0c;若配置不当&#xff08;特别是未授权访问&#xff09;&#xff0c;将面临极高安全风险。攻击者可利用漏洞实现远程代码执行&#xff08;GetShell&#xff09;&#xff0c;严重威胁数据安全与服务器控制权。本文深入剖析此类漏洞的核心原理…

墨者:SQL过滤字符后手工绕过漏洞测试(万能口令)

1. 墨者学院&#xff1a;SQL过滤字符后手工绕过漏洞测试(万能口令)&#x1f680; 2. 漏洞背景分析&#x1f50d; 近期发现某登录系统存在SQL注入漏洞&#xff0c;攻击者可通过构造特殊用户名admin,a,a)#绕过身份验证。本文将深入解析其工作原理&#xff0c;并演示完整渗透测试流…

Kafka 顺序消费实现与优化策略

在 Apache Kafka 中&#xff0c;实现顺序消费需要从 Kafka 的架构和特性入手&#xff0c;因为 Kafka 本身是分布式的消息系统&#xff0c;默认情况下并不完全保证全局消息的顺序消费&#xff0c;但可以通过特定配置和设计来实现局部或完全的顺序消费。以下是实现 Kafka 顺序消费…

CSP-J 2022_第三题逻辑表达式

题目 逻辑表达式是计算机科学中的重要概念和工具&#xff0c;包含逻辑值、逻辑运算、逻辑运算优先级等内容。 在一个逻辑表达式中&#xff0c;元素的值只有两种可能&#xff1a;0&#xff08;表示假&#xff09;和 1&#xff08;表示真&#xff09;。元素之间有多种可能的逻辑运…

从释永信事件看“积善“与“积恶“的人生辩证法

博客目录起心动念皆是因&#xff0c;当下所受皆是果。"起心动念皆是因&#xff0c;当下所受皆是果。"这句古老的智慧箴言&#xff0c;在少林寺方丈释永信涉嫌违法被调查的事件中得到了令人唏嘘的印证。一位本应六根清净、持戒修行的佛门领袖&#xff0c;却深陷贪腐丑…

图片格式转换

文章目录 背景目标实现下载 背景 格式碎片化问题 行业标准差异&#xff1a;不同领域常用格式各异&#xff08;如设计界用PSD/TIFF&#xff0c;网页用JPG/PNG/WEBP&#xff0c;系统图标用ICO/ICNS&#xff09;。 设备兼容性&#xff1a;老旧设备可能不支持WEBP&#xff0c;专业…

Flutter实现Android原生相机拍照

方法1&#xff1a;使用Flutter的camera插件&#xff08;完整实现&#xff09; 1. 完整依赖与权限配置 # pubspec.yaml dependencies:flutter:sdk: fluttercamera: ^0.10.52path_provider: ^2.0.15 # 用于获取存储路径path: ^1.8.3 # 用于路径操作permission_handler:…

记录几个SystemVerilog的语法——随机

1. 随机稳定性(random stability)随机稳定性是指每个线程(thread)或对象(object)的random number generator(RNG)是私有的&#xff0c;一个线程返回的随机值序列与其他线程或对象的RNG是无关的。随机稳定性适用于以下情况&#xff1a;系统随机方法调用&#xff1a;$urandom()和…

初识 docker [下] 项目部署

项目部署Dockerfile构建镜像DockerCompose基本语法基础命令项目部署 前面我们一直在使用别人准备好的镜像&#xff0c;那如果我要部署一个Java项目&#xff0c;把它打包为一个镜像该怎么做呢&#xff1f; …省略一万字 站在巨人的肩膀上更适合我们普通人,所以直接介绍两种简单…

Android15广播ANR的源码流程分析

Android15的广播ANR源码流程跟了下实际代码的流程&#xff0c;大概如下哈&#xff1a;App.sendBroadcast() // 应用发起广播→ AMS.broadcastIntentWithFeature() // 通过Binder IPC进入system_server进程→ AMS.broadcastIntentLocked() // 权限校验广播分类&#xff08;前…

密码学中的概率论与统计学:从频率分析到现代密码攻击

在密码学的攻防博弈中&#xff0c;概率论与统计学始终是破解密码的“利器”。从古典密码时期通过字母频率推测凯撒密码的密钥&#xff0c;到现代利用线性偏差破解DES的线性密码分析&#xff0c;再到侧信道攻击中通过功耗数据的统计特性还原密钥&#xff0c;统计思维贯穿了密码分…

力扣刷题977——有序数组的平方

977. 有序数组的平方 题目&#xff1a; 给你一个按 非递减顺序 排序的整数数组 nums&#xff0c;返回 每个数字的平方 组成的新数组&#xff0c;要求也按 非递减顺序 排序。示例 1&#xff1a; 输入&#xff1a;nums [-4,-1,0,3,10] 输出&#xff1a;[0,1,9,16,100] 解释&…

应用加速游戏盾的安全作用

在数字娱乐产业蓬勃发展的今天&#xff0c;游戏已从单纯的娱乐工具演变为连接全球数十亿用户的社交平台与文化载体。然而&#xff0c;伴随游戏市场的指数级增长&#xff0c;网络攻击的频率与复杂性也呈爆发式上升。从DDoS攻击导致服务器瘫痪&#xff0c;到外挂程序破坏公平竞技…