-
[리트코드] (LeetCode) 49번 Group Anagrams 문제Problem Solving/LeetCode 2021. 7. 5. 17:56
한 문자열의 요소가 같은 것끼리 이루어져있는 것들을 리스트로 묶어서 반환하면 되는 문제다.
한 문자열을 정렬해서 비교하면 같은 요소로 이루어져있는지 아닌지 알 수 있다.
이것을 아이디어로 문자열을 정렬한 값을 딕셔너리에 key 값으로 하여 value로 받으면 쉽게 풀 수 있다.
class Solution(object): def groupAnagrams(self, strs): # value가 list인 형태의 dict를 반환 group = defaultdict(list) for word in strs: group[''.join(sorted(word))].append(word) return list(group.values())
'Problem Solving > LeetCode' 카테고리의 다른 글
[리트코드] (LeetCode) 24번 Swap Nodes in Pairs 문제 (0) 2021.07.05 [리트코드] (LeetCode) 21번 Merge Two Sorted Lists 문제 (0) 2021.07.05 [리트코드] (LeetCode) 20번 Valid Parentheses 문제 (0) 2021.07.05 [리트코드] (LeetCode) 15번 3Sum 문제 (0) 2021.07.05 [리트코드] (LeetCode) 2번 Add Two Numbers 문제 (0) 2021.07.05