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

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

Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.

For example,

"A man, a plan, a canal: Panama" is a palindrome.
"race a car" is not a palindrome.

Note:

Have you consider that the string might be empty? This is a good question to ask during an interview.

For the purpose of this problem, we define empty string as valid palindrome.

#include 
#include
#include
using std::string;class Solution { public: bool isAlphaNumber(char & c) { if (c >= '0' && c <= '9') { return true; } if (c >= 'a' && c <= 'z') { return true; } if (c >= 'A' && c <= 'Z') { c += 'a' - 'A'; return true; } return false; } bool isPalindrome(string s) { // Start typing your C/C++ solution below // // DO NOT write int main() function // if (s.empty()) { return true; } int i = 0, j = s.size() - 1; char a,b; while(i < s.size() && j >= 0){ a = s.at(i); b = s.at(j); if (!isAlphaNumber(a)) { i++; continue; } if (!isAlphaNumber(b)) { j--; continue; } if (a == b) { i++; j--; }else { return false; } } //if (i + j != s.size()) //{ // return false; //}else { return true; } }};

 

转载于:https://www.cnblogs.com/kwill/archive/2013/02/27/2935945.html

你可能感兴趣的文章
quarzt(官方)---给自己看的文档(SchedulerListeners)-8
查看>>
Linux-慕课网学习笔记-3-1命令格式
查看>>
AJAX入门介绍
查看>>
[算法竞赛入门]第一章_算法概述
查看>>
SQL反模式笔记3——主键规范
查看>>
简单粗暴,微生物生态研究中常用数据库简介--转载
查看>>
Oracle -操作数据库
查看>>
c - 给分数分级别
查看>>
chrome 调试
查看>>
luoguP2774 方格取数问题
查看>>
tcp/ip协议各层的理解与
查看>>
python中的setdefault()方法
查看>>
转 VSFTP用户权限管控
查看>>
poj2420 A Star not a Tree? 模拟退火
查看>>
微信小程序--登录授权,一键获取用户微信手机号并登录
查看>>
[转载] C#面向对象设计模式纵横谈——13. Proxy代理模式
查看>>
JqueryEasyUI浅谈---视频教程公布
查看>>
ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致”...
查看>>
Javaweb之 servlet 开发详解1
查看>>
Restore IP Addresses
查看>>