【Leetcode】Valid Palindrome
来源:互联网 发布:teambition mac下载 编辑:程序博客网 时间:2024/05/16 03:20
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.
题意:判断给定字符串是否为回文串。
设置两个指针,由头尾两端向中间移动,如果判断到所在位置的字符为非字母和数字,使用while循环,但同时要保证两个指针的前后位置没有发生改变。接着按两个指针所指的字符是否字母,数字等进行判断,如果不相等,跳出循环,否则继续下一轮循环。
class Solution {public: bool isPalindrome(string s) { if(s=="") return true; int len=s.size(); int i=0,j=len-1; for(;j-i>=1;i++,j--) { while(!isalnum(s[i])&&i<=j) i++; while(!isalnum(s[j])&&j>=i) j--; if(j<=i) break; if(isalpha(s[i])&&isalpha(s[j])) { if(tolower(s[i])==tolower(s[j])) continue; else break; } else if(isdigit(s[i])&&isdigit(s[j])) { if(s[i]==s[j]) continue; else break; } else break; } if(j>i) return false; else return true; }};
0 0
- [Leetcode] Valid Palindrome
- Leetcode: Valid Palindrome
- leetcode 55: Valid Palindrome
- [LeetCode] Valid Palindrome
- 【leetcode】Valid Palindrome
- LeetCode - Valid Palindrome
- [leetcode]Valid Palindrome
- [LeetCode]Valid Palindrome
- [Leetcode]Valid Palindrome
- LeetCode-Valid Palindrome
- [leetcode] Valid Palindrome
- LeetCode 125: Valid Palindrome
- LeetCode - Valid Palindrome
- leetcode之Valid Palindrome
- LeetCode | Valid Palindrome
- [leetcode]Valid Palindrome
- 【leetcode】Valid Palindrome
- LeetCode题解:Valid Palindrome
- lua程序性能优化(table的初始化)
- 多科成绩单并求出各种成绩
- Object-C 学习笔记(十九)---#include 、#import 、@class
- 鱼
- 关注arduino的两个产品:udoo,rfduino
- 【Leetcode】Valid Palindrome
- 吉芬物品
- 设计一个程序,输入3个整数,将其按从大到小的顺序输出
- Puppy Linux安装gcc编译器
- Asp.net 生成高清缩略图
- java.lang.UnsatisfiedLinkError解决方法汇集(转载)
- C/C++中的连续赋值
- .NET中的CTS、CLS和CLR
- 【"新"三字经】