您的位置:首页 > 其它

【LEETCODE】125-Valid Palindrome

2015-12-21 16:15 323 查看
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.

题意:
给一个string,判断是否回文,忽略非字母非数字的字符

思路:
string为空时的判断
去掉标点等非字母
全转换成小写
两个指针分别首尾开始比较是否一样

参考:
很简洁的代码: http://chaoren.is-programmer.com/posts/43189.html


class Solution(object):
def isPalindrome(self, s):
"""
:type s: str
:rtype: bool
"""

#is s is None:
#return None

new=[]

s=s.lower()

for i in s:
if '0'<=i<='9' or 'a'<=i<='z':
new.append(i)

return new==new[::-1]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: