📊알고리즘, 문제풀이/📈문제풀이 (PS)

[알고리즘][Python] LeetCode 125 Valid Palindrome 문제 풀이

Written by Donghak Park

문제 출처 : leetcode.com/problems/valid-palindrome/

 

Valid Palindrome - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com


문제 해석 : 입력된 문자열이 뒤집어도 같은 문자열인지 판별하는 문제이다.

 

문제 풀이 : 이 문제에서는 숫자, 알파벳만 고려한다고 하였기 때문에 전처리후에 뒤집어서 같은지 비교하면 된다.

 

가능한 다른 풀이 : 리스트를 이용한 풀이

 


풀이 코드

class Solution:
    def isPalindrome(self, s: str) -> bool:

        answer = False
        candidate1 = ''
        candidate2 = ''

        for element in s:
            if element.isalnum():
                candidate1 = candidate1 + element.lower()
                candidate2 = element.lower() + candidate2

        if candidate2 == candidate1:
            answer = True

        return answer


if __name__=="__main__":
    S = "race a car"
    S2 = "A man, a plan, a canal: Panama"
    solution = Solution()

    print(solution.isPalindrome(S))
    print(solution.isPalindrome(S2))

author : donghak park
contact : donghark03@naver.com

## 문제의 저작권은 LeetCode 사이트에 있습니다. 혹시 문제가 되는 부분이 있으면 연락 바랍니다.