给定一个字符串,判断其是否为一个回文串。只包含字母和数字,忽略大小写。

注意事项

你是否考虑过,字符串有可能是空字符串?这是面试过程中,面试官常常会问的问题。

在这个题目中,我们将空字符串判定为有效回文。

样例

"A man, a plan, a canal: Panama" 是一个回文。

"race a car" 不是一个回文。

挑战

O(n) 时间复杂度,且不占用额外空间。

  bool isPalindrome(string& s) {
// Write your code here
int len,j;
for(len = , j = ; j < s.size(); ++j)
{
if(s[j] >= '' && s[j] <= '')
{
s[len++] = s[j];
}
else if(((s[j] >= 'a') && (s[j] <= 'z')) || ((s[j] >= 'A') && (s[j] <= 'Z')))
{
s[len++] = tolower(s[j]);
}
}
int i = ;
j = len - ;
while(i < j)
{
if(s[i] == s[j])
{
i++;
j--;
}
else return false;
}
return true;
}

最新文章

  1. .NET 需要处理的高性能WEB架构 - .NET架构
  2. SMB/CIFS协议解析二
  3. 1014: [JSOI2008]火星人prefix - BZOJ
  4. 8款必备的免费移动Web开发框架(HTML5/JS)
  5. Cycling Label
  6. 创建和使用RMAN存储脚本
  7. 电脑硬件扫盲--CPU 显卡
  8. A Byte of Python 笔记(11)异常:try..except、try..finally
  9. Java程序员入门:程序员究竟可以干多少年?
  10. 洛谷P3366 【模板】最小生成树(Boruvka算法)
  11. NOIP2011 D2T3 观光公交 做题笔记
  12. WAP网页中点击链接直接拨打电话的方法
  13. 【iCore4 双核心板_ARM】例程五:SYSTICK定时器 实验——定时点亮LED
  14. [蓝桥杯]ALGO-92.算法训练_前缀表达式
  15. How do I convert an IIR filter into a FIR filter in digital signal processing?
  16. ArcGIS 10.2 链接64位Oracle数据库
  17. Android继承BaseAdapter时要重写的函数的说明
  18. 性能分析_linux服务器CPU_Load Average
  19. 读书笔记--C陷阱与缺陷(六)
  20. hdu 1532 最大流

热门文章

  1. AJAX相关概念及应用
  2. JavaWeb读取资源文件的四种方式
  3. 2016年深圳市服务业占GDP比重首次突破六成
  4. 使用Native API 创建进程
  5. C语言实现 计算个人所得税务2种方法
  6. IDEA中Git的使用(多人合作)
  7. 关于socket的setsockopt的使用
  8. PKU OJ A Bug&#39;s life
  9. 2019-2-26-SublimeText-快速打开当前文件的文件夹
  10. linux拆分文件