[LintCode] 有效回文串
2024-09-28 01:19:18
class Solution {
public:
/**
* @param s A string
* @return Whether the string is a valid palindrome
*/
bool isPalindrome(string& s) {
// Write your code here
int left = , right = s.length() - ;
while (left < right) {
while (left < right && !isdigit(s[left]) && !isLetter(s[left]))
left++;
if (left == right) break;
while (right > left && !isdigit(s[right]) && !isLetter(s[right]))
right--;
if (right == left) break;
if (!match(s[left++], s[right--])) return false;
}
return true;
}
private:
bool isLetter(char s) {
return (s >= 'A' && s <= 'Z') || (s >= 'a' && s <= 'z');
}
bool match(char s, char t) {
if (isLetter(s) && isLetter(t))
return (s == t) || (s - t == ) || (t - s == );
return s == t;
}
};
最新文章
- rsa互通密钥对生成及互通加解密(c#,java,php)
- HFS远程命令执行漏洞入侵抓鸡黑阔服务器
- C# WebService输出JSON 实现二
- 【摘】 pt-query-digest工具一解
- HibernateTemplate的一些常用方法总结
- ArcSoft&#39;s Office Rearrangement---hdu5933
- delphi使用 第三方控件
- 使用PDO执行SQL语句exec()、query()
- StackExchange.Redis 使用-同步 异步 即发即弃 (三)
- python将多个pdf合成一个
- centos vi设置tab为4个空格 和括号自动补全
- 二进制补码除法——计算机底层整数除法模拟之Java实现
- Percona Toolkit mysql辅助利器
- 5.2&;5.3
- poj 3009 冰球 【DFS】求最小步数
- PHP手册-函数参考-加密扩展
- AIX安装JDK1.7教程
- 取自ACE中的bit操作宏(转)
- 转:CentOS 6.x 挂载读写NTFS分区(fuse-ntfs-3g)
- windows7所有版本迅雷地址下载集合(含32位和64位) - imsoft.cnblogs
热门文章
- python基础篇---实战---用户登入注册程序
- MongoDB - Cursors
- mysql 添加缓存
- Exif.js获取图片的详细信息(苹果手机移动端上传图片旋转90度)
- laravel中,提交表单后给出提示例如添加成功,添加失败等等
- Windows+Nginx+IIS做图片分布式存储详细步骤
- POJ-1318(list.sort()输出不为字典序,map才是按字典序排列)
- Vivado的helloword程序:软件工程部分
- (4)Smali系列学习之Smali语法详解内部类
- iOS9 3DTouch、ShortcutItem、Peek And Pop技术一览