【c++】LeetCode125. 验证回文串

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

LeetCode125. 验证回文串

https://leetcode-cn.com/problems/valid-palindrome
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。

说明:本题中,我们将空字符串定义为有效的回文串。

示例 1:
输入: “A man, a plan, a canal: Panama”
输出: true

示例 2:
输入: “race a car”
输出: false


双指针法:
设置左右两个指针,分别指向字符串的开头和末尾元素。两指针分别向字符串中间移动,同时比较他们指向的元素,若不同,则返回 false。

函数介绍:
isalnum(e):判断元素 e 是否为 字母或数字字符。若是,返回true;不是,则返回 false 。
tolower(e):把元素 e 变成小写字母。
toupper(e):把元素 e 变成大写字母。

class Solution {
   
   
public:
    bool isPalindrome(string s) {
   
   
        if (s.size() <= 1)
			return true;
        int l = 0
突破编程_C++_字符串算法判断字符串是否是回文) C++ 字符串算法判断字符串是否回文 阅读详情

相关推荐

c判断字符串是不是数字_漫画:各语言如何优雅的判断回文字符串(必会)

今天是小浩算法 “365刷题计划”- 储备日。难顶,我本来今天在写最长回文子串这个题目。然后我突然在想,直接讲这个会不会仍然有同学看不懂,为什么不从最简单的讲起呢。于是,今天的文章诞生了。于是,小浩又熬夜到了凌晨。01PART验证回文串见微知著,发现一组数据很有趣,分享给大家。leetcode 第一题通过次数为 993,335,第二题通过次数为 396,160,第三题通过次数为 69,5...

weixin_39584405的博客 169

C/C++回文字符串

/*回文:回文就是正读反读都一样的字符串, 例如:"radar","12321" 和 "abcba"等  请用递归函数palindrome(),在数组中的字符串为回文时返回true,否则返回false。 函数忽略字符串中的空格和标点符号。 */ #include #include /*参数: str字符串  m一半数  n总个数*/int palindrome(char str[], int m,

Mobidogs Blog 3080

c++语言判断回文字符串,C++实现:判断回文字符串

#include #include #include #include #include #include#define size 500#define addsize 100using namespace std;//栈的内部结构typedef struct {char *base;char *top;int stack_size;}SqStack;//stack 的初始化bool InitSt...

weixin_39810856的博客 905

LeetCode125 题:验证回文串(C++)

125. 验证回文串 - 力扣(LeetCode简单题,处理好什么时候跳过,什么时候转换就行: class Solution { public: bool isPalindrome(string s) { int n = s.size(); if(n < 2) return true; int i = 0, j = n-1; while(i < j){ while(i < j &

zj 287

LeetCode 125. 验证回文串 | C++语言版

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

weixin_45992021的博客 697

Leetcode 125. 验证回文串 C++

Leetcode 125. 验证回文串 题目 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 测试样例 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 示例 2: 输入: "race a car" 输出: false 题解 双指针,一个指针从左向右,一个指针从右向左,注意只考虑字母和数字,同时将字母都当作大写。详细过程见代码 代码 bool isValid(cha

weixin_43750513的博客 260

C++ LeetCode 125 验证回文串

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: “A man, a plan, a canal: Panama” 输出: true 示例 2: 输入: “race a car” 输出: false 简单版本 class Solution { public: bool isPalindrome(string s) { string temp; for(int i=0;

qq_24447809的博客 217

LeetCode 125.验证回文串 C++写法

我们,这样效率太低了,所以可以,下标begin和end遇到的就,当两边字母就进行,一样就继续往后走,不一样就返回false。

m0_63816268的博客 735

LeetCode 125 验证回文串 C++

题目:验证回文串 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 示例 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 示例 2: 输入: "race a car" 输出: false 说明 说明:本题中,我们将空字符串定义为有效的回文串。 解法 解法1:双指针 1.遍历整个字符串 2.遇到空格,i++ or j-- 3.转换为小写后比较是否相等,出现不等的情况return bool i..

宿琪笙fly的博客 233

力扣125验证回文串C++

题目 请点击 思路 首先例外情况,当字符串为空时,也是回文串,返true 双指针遍历,i=0,j=len-1,循环条件i<j 若s[i]或s[j]不是字母或数字时,直接跳过 若s[i]或s[j]是大写字母时,转成小写字母 若s[i]!=s[j]时,说明不是回文串,返回false 遍历结束,返回true,(s[i]与s[j]全相等) 踩坑 起初采用的循环条件是i!=j,结果直接报错 大概的意思是越界了 然后,仔细想了下,确实是,如果字符串的长度是偶数,比如给出的"aa",那么第一次循环i=0,j

thwwu的博客 265

力扣125-验证回文串-C++

一、题目 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 解释:"amanaplanacanalpanama" 是回文串 示例 2: 输入: "race a car" 输出: false 解释:"raceacar" 不是回文串 提示: 1 <= s.length <= 2 * 105 字符串 s

TLJava^v^的博客 598

LeetCode 125.验证回文串 C++

题目描述 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 解释:"amanaplanacanalpanama" 是回文串 示例 2: 输入: "race a car" 输出: false 解释:"raceacar" 不是回文串 提示: 1 <= s.length <= 2 * 105 字.

麦当劳比肯德基好吃 293

[C++]Leetcode125. 验证回文串 (详解)

125. 验证回文串 题目:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: “A man, a plan, a canal: Panama” 输出: true isalnum(char c) 是否为字母或者数字 tolower(char c) 字母大转小 class Solution { public: bool isPalindrome(string s) { //双指针

cpb____的博客 792

[LeetCode C++] 125. 验证回文串

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/valid-palindrome/ 题目: 关键函数: 方法一:筛选+判断 class Solution { public: bool isPalindrome(string s) { string sgood; for (char ch: s) { if (isalnum(ch)) { sgood +=

超级大洋葱的博客 314

leetcode125验证回文串C++

思路:用另外一个字符串按原字符串的书按需记录原字符串中的字母和数字。 然后从两边开始比较对应位置的字符是否相等即可。当遇到大写字符的时候,需要将大写字母变换为对应的小写字母。 class Solution { public: bool isPalindrome(string s) { string t; for (int i = 0; i&lt;s.size(); ++i) { ...

qq_43387999的博客 247

Leetcode刷题28-125.验证回文串(C++详细解法!!!)

题目来源:链接: [https://leetcode-cn.com/problems/valid-palindrome/]. 125.验证回文串1.问题描述2.我的解决方案3.大神们的解决方案4.我的收获 1.问题描述 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例1: 输入: "A man, a plan,...

qq_40858438的博客 433

LeetCode--125.验证回文串C++描述)

// Source : https://leetcode-cn.com/problems/valid-palindrome/ // Date : 2021-11-2 /************************************************************************************** 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: “A man, a

YGQ_qq_1435471912 414

LeetCode刷题_125:验证回文串C++

题目描述 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 示例 2: 输入:"race a car" 输出:false 答案代码 class Solution { public: bool isPal...

anchuanxu的博客 190

Leetcode 125. 验证回文串 解题思路及C++实现

解题思路: 利用头尾双指针:i ,j 。 需要判断每一个字符是否为字母或数字,c++中对应的函数为 isalnum,如果不是字母或数字,返回0。 c++判断大小写字母字符的函数是 isalpha,是大写返回1,是小写返回2,不是英文字符返回0。 其实,在一开始可以用c++中的transform 函数,将输入字符串 s 中的字母都转为小写。 class Solution { pu...

PaniniGu的博客 350
上一篇: 【c++】LeetCode167. 两数之和 II - 输入有序数组
下一篇: 【c++】LeetCode345. 反转字符串中的元音字母
白金闪光蛋
博客等级 码龄7年 1粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值