-
[리트코드] 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
'파이썬' 카테고리의 다른 글
[이코테] 1이 될 때까지 (0) 2022.01.18 [리트코드] 937 _ 로그 파일 재정렬 (0) 2022.01.12 [Python] 리스트 (0) 2022.01.10