当前位置:网站首页>判断回文
判断回文
2022-08-02 03:33:00 【小艾菜菜菜】
以元封不动的对原字符串进行回文的判断
题目描述:
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
示例 1:
输入: “A man, a plan, a canal: Panama”
输出: true
解释:“amanaplanacanalpanama” 是回文串
示例 2:
输入: “race a car”
输出: false
解释:“raceacar” 不是回文串
在做这类题之前我们要熟悉C++ 中的常用的字符判断的内置函数:
做题思想:
这道题的主要思想就是用到了双指针算法思想,只是在我们遇到空格与数字啥的其他字符时 跳过即可,简言之只要不是字母,跳过!剩下的就交给常规的双指针思想解决即可。
代码实现:
bool isPalindrome(string s) {
int right = s.size(), left = 0;
while ( left < right)
{
while (left < right && !isalnum(s[left]))
{
left++;
}
while (left < right && !isalnum(s[right]))
{
right--;
}
if (left < right )
if ( tolower(s[left]) != tolower(s[right]))
{
return false;
break;
}
left++;
right--;
}
return true;
}
边栏推荐
猜你喜欢
【TCS3200 color sensor and Arduino realize color recognition】
云服务器web项目部署详解
与TI的lvds芯片兼容-GM8284DD,GM8285C,GM8913,GM8914,GM8905C,GM8906C,国腾振芯LVDS类芯片,
Process (in): process state, process address space
Comparison between Boda Industrial Cloud and Alibaba Cloud
Introduction and mock implementation of list:list
Flame sensor connected with Arduino
同时求最大值与最小值(看似简单却值得思考~)
振芯科技GM8285C:功能TTL转LVDS芯片简介
unity学习(五):Excel表格读取和数据类生成
随机推荐
剑指Offer 35.复杂链表的复制
只出现一次的字符
龙芯2K1000使用nfs挂载文件系统进行使用
【plang 1.4.6】Plang高级编程语言(发布)
The use and simulation of vector implementation:
idea中创建jsp项目详细步骤
进程(番外):自定义shell命令行解释器
电子密码锁_毕设‘指导’
剑指Offer 13.机器人的运动范围 深度优先遍历
步兵相关连接
“520” 如何正确地用代码向 ta 表白?
TQP3M9009电路设计
MC1496乘法器
rosdep update失败解决办法(亲测有效)
MAC安装Mysql超详细完整教程
功率计,物联网,智能插座电路设计【毕业设计】
Industry where edge gateway strong?
剑指Offer 04.二位数组中的查找 线性查找
Introduction and mock implementation of list:list
STM32F4 CAN 配置注意的细节问题