首页 > 其他 > 详细

LeetCode:Valid Palindrome

时间:2016-06-05 12:37:51      阅读:141      评论:0      收藏:0      [点我收藏+]

Valid Palindrome




Total Accepted: 103983 Total Submissions: 432738 Difficulty: Easy

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.

Subscribe to see which companies asked this question

Hide Tags
 Two Pointers String
Hide Similar Problems
 (E) Palindrome Linked List






















c++ code:

class Solution {
public:
    bool isPalindrome(string s) {
        
        if(0 == s.size()) return true;
        int i=0,j=s.size()-1;
        while(i<=j){
            while(!isA(s[i]) && i<j) i++;
            while(!isA(s[j]) && i<j) j--;
            if(tolower(s[i])!=tolower(s[j]))
                return false;
            i++;j--;
        }
        return true;
    }
    bool isA(char c){
        if('a'<=c && c<='z' || 'A'<=c && c<='Z' || '0'<=c && c<='9')
            return true;
        else
            return false;
    }
};


LeetCode:Valid Palindrome

原文:http://blog.csdn.net/itismelzp/article/details/51588422

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!