博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LC125 Valid Palindrome
阅读量:6245 次
发布时间:2019-06-22

本文共 606 字,大约阅读时间需要 2 分钟。

回文串判断,需要学习这段代码中transform,tolower,isalnum函数的使用。这种函数可以节省时间,比如判断是不是字母或者字符的函数isalnum。

另外就是要学着用auto类型。

回文串判断其实就是用头尾两个指针一个个判断过去,没什么好方法。当然还有衍生出来的题目,比如判断一个字符串是否可以通过增加(减少)一个字符变成回文串,或者一个字符串的最长子回文串。

1 class Solution { 2 public: 3 bool isPalindrome(string s) { 4 transform(s.begin(), s.end(), s.begin(), ::tolower); 5 auto left = s.begin(), right = prev(s.end()); 6 while (left < right) { 7 if (!::isalnum(*left)) ++left; 8 else if (!::isalnum(*right)) --right; 9 else if (*left != *right) return false;10 else { left++, right--; }11 }12 return true;13 }14 };
View Code

 

转载于:https://www.cnblogs.com/vaecn/p/5307204.html

你可能感兴趣的文章
[转载] 中华典故故事(孙刚)——37 只许州官放火,不许百姓点灯
查看>>
mysql5.7.22源码编译安装
查看>>
Java基础学习总结(23)——GUI编程
查看>>
SVN学习总结(2)——SVN冲突解决
查看>>
nagios的安装搭建以及添加监控主机
查看>>
Harbor和YUM部署for CentOS 7
查看>>
shell脚本练习一(if语句、case语句、for语句、while语句)
查看>>
Web服务(二)httpd配置参数详细介绍
查看>>
unity中射线碰撞检测总结
查看>>
Mysql触发器
查看>>
运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(七)
查看>>
ArcSDE 10.1 的安装
查看>>
python面向对象——方法
查看>>
Python--分析微信好友是否被删除
查看>>
MYSQL一些字符串的处理,如拼接,截取等,便于用在同一字段中多个值的处理...
查看>>
网络工程师
查看>>
在C#下的SQL模糊查询语句 (Visual Studio)
查看>>
第三章 广域通信网
查看>>
xhtml+css基础知识2
查看>>
我的友情链接
查看>>