• LeetCode#125 Valid Palindrome


    Problem Definition:

    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.

     
    Solution 1: Using regular expression.
    1 def isPalindrome(self, s):
    2         p=re.compile('w')
    3         arr=p.findall(s)
    4         n=len(arr)/2
    5         for i in range(n):
    6             if arr[i].upper()!=arr[n-1-i].upper():
    7                 return False
    8         return True

    Solution 2: A simpler way of using regular expression.

    1 def isPalindrome(self, s):
    2         s = re.sub("[^A-Za-z0-9]", "", s).lower()  #可以换成'W'
    3         return s == s[::-1]

    Solution 3: Just traverse the string.

    1 def isPalindrome(s):
    2         s1 = ''.join(ch for ch in s if ch.isalnum()).lower()
    3         return s1 == s1[::-1]
     
     
  • 相关阅读:
    iOS--异步下载
    linux搭建ftp服务器
    hexo常用命令
    Markdown入门
    Markdown 语法和 MWeb 写作使用说明
    vi/vim
    微信聊天机器人
    .vimrc
    配置双机
    python学习笔记(一)
  • 原文地址:https://www.cnblogs.com/acetseng/p/4663947.html
Copyright © 2020-2023  润新知