博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LintCode] 有效回文串
阅读量:6322 次
发布时间:2019-06-22

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

1 class Solution { 2 public: 3     /** 4      * @param s A string 5      * @return Whether the string is a valid palindrome 6      */ 7     bool isPalindrome(string& s) { 8         // Write your code here 9         int left = 0, right = s.length() - 1;10         while (left < right) {11             while (left < right && !isdigit(s[left]) && !isLetter(s[left]))12                 left++;13             if (left == right) break;14             while (right > left && !isdigit(s[right]) && !isLetter(s[right]))15                 right--;16             if (right == left) break;17             if (!match(s[left++], s[right--])) return false;18         }19         return true;20     }21 private:22     bool isLetter(char s) {23         return (s >= 'A' && s <= 'Z') || (s >= 'a' && s <= 'z');24     }25     bool match(char s, char t) {26         if (isLetter(s) && isLetter(t))27             return (s == t) || (s - t == 32) || (t - s == 32);28         return s == t;29     }30 };

 

转载地址:http://fntaa.baihongyu.com/

你可能感兴趣的文章
分布式系统的面试题14
查看>>
web标准的理解
查看>>
浅谈C中的指针和数组(一)
查看>>
你应该在开始API开发之前知道的事(下)(翻译)
查看>>
反射 -- 业务需求:执行某个类中全部的以test为开头的无参数无返回值的非静态方法。...
查看>>
C#关于值类型和引用类型的备忘
查看>>
JavaScript正则表达式详解
查看>>
用委托在listbox中异步显示信息,解决线程间操作无效,从不是创建控件的线程访问它...
查看>>
activity四种启动模式
查看>>
tomcat运行模式APR安装
查看>>
c# winform编程之多线程ui界面资源修改总结篇
查看>>
angular4 下载文件 Excel zip包
查看>>
How to setup Eclipse with WinAVR and the Eclipse plugin AVR-eclipse
查看>>
C++11带来的优雅语法
查看>>
poj 2356 Find a multiple(鸽巢原理)
查看>>
第25本:《超级快速阅读》
查看>>
Unity中2D和UGUI图集的理解与使用
查看>>
ASP.NET MVC流程解说
查看>>
XMPP我写底层协议(零)--废话和准备开幕前
查看>>
Cocos2D-X2.2.3学习笔记12(瞬间动作)
查看>>