字符串——5、有效的回文字符串

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可忽略字母的大小写。
说明:我们将空字符串定义为有效的回文串。
示例1:

输入: "A man, a plan, a canal:Panama"
返回:true

示例2:

输入: "race a car"
返回: false

方法1:

思路:用str.isalnum()检测字符串是不是由字母和数字组成,删掉多余的空格,再判断是否是否与倒序排列相等,若相等则为回文字符串。

class Solution:
    def isPalindrome(self, s):
    	s_filter = ''.join(filter(str.isalnum, s)).lower()
    	return s_filter == s_filter[::-1]

方法2:

思路:新建列表,将字符串中的字母数字添加新列表中去,再判断是否为回文字符串。

class Solution:
    def isPalindrome(self, s):
    	s = s.lower()
    	character = 'abcdefghijklmnopqrstuvwxyz0123456789'
    	l = []
    	for i in s:
    	    if i in character:
    	    	l.append(i)
    	if l == l[::-1]:
    	    return True
    	return False

猜你喜欢

转载自blog.csdn.net/weixin_41605837/article/details/84646090