https://leetcode.com/explore/interview/card/top-interview-questions-easy/127/strings/882/
풀이
파이썬 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
반응형
'Algorithm > Online judge' 카테고리의 다른 글
[LeetCode] Strings > Longest Common Prefix (0) | 2021.05.26 |
---|---|
[LeetCode] Strings > Valid Palindrome (0) | 2021.05.25 |
[LeetCode] Strings > Reverse Integer (0) | 2021.05.21 |
[백준] 15868번 > 치킨 배달 (0) | 2021.05.20 |
[백준] 14500번 > 테트로미노 (0) | 2021.05.19 |