ABOUT ME

Today
Yesterday
Total
  • [리트코드] 125 _ 유효한 팰린드롬
    파이썬 2022. 1. 12. 12:44
    for char in s:
                if char.isalnum():
                    strs.append(char.lower())

    문제 : 주어진 문자열이 팰린드롬인지 확인하라. 대소문자를 구분하지 않으며, 영문자와 숫자만을 대상으로 한다.

    (팰린드롬(Palindrome) ? 앞뒤가 똑같은 단어나 문장을 말함)


    예시 : 

    Example 1:

    Input: s = "A man, a plan, a canal: Panama"
    Output: true
    Explanation: "amanaplanacanalpanama" is a palindrome.
    

    Example 2:

    Input: s = "race a car"
    Output: false
    Explanation: "raceacar" is not a palindrome.

    해결 : 

    class Solution:
        def isPalindrome(self,s:str)-> bool:
            strs=[]
            for char in s: # 특수문자를 거르기 위한 전처리 과정 
                if char.isalnum(): #isalnum() : 숫자와 문자 -> True, 특수문자 -> False
                    strs.append(char.lower()) # .lower() 모두 소문자로 통일
    
            while len(strs)>1:
                if strs.pop(0)!=strs.pop():
                    return False
            return True

     

    '파이썬' 카테고리의 다른 글

    댓글

Designed by Tistory.