Algorithm/Online judge

[LeetCode] Strings > Valid Anagram

민철킹 2021. 5. 25. 23:08

https://leetcode.com/explore/interview/card/top-interview-questions-easy/127/strings/882/

 

Explore - LeetCode

LeetCode Explore is the best place for everyone to start practicing and learning on LeetCode. No matter if you are a beginner or a master, there are always new topics waiting for you to explore.

leetcode.com

 


풀이

 

파이썬 dictionary 자료형을 사용하여 문제를 해결하였다.

Anagram이란 cat, act / teem, meet 와 같이 한 단어를 재조합해 만들 수 있는 것을 의미한다.

각 글자를 dictionary에 집어넣는데 key값은 알파벳, value값은 등장횟수로 만들어 만약 존재하면 value값을 +1 해주고 없다면 새로 넣어주는 식이다.

 

최종적으로 만들어진 두개의 dictionary를 비교하여 같다면 true를 틀리다면 false를 반환한다.

class Solution:
    def isAnagram(self, s: str, t: str) -> bool:
        s_dict = dict()
        t_dict = dict()

        for i in s:
            if i in s_dict:
                s_dict[i] = s_dict.get(i) + 1
            else:
                s_dict[i] = 1
        for i in t:
            if i in t_dict:
                t_dict[i] = t_dict.get(i) + 1
            else:
                t_dict[i] = 1
        
        if s_dict == t_dict:
            return True
        else:
            return False
반응형