[리트코드] 49. Group Anagrams - python 본문

코테 문제 풀이

[리트코드] 49. Group Anagrams - python

미니모아 2022. 4. 13. 15:52
반응형

49. Group Anagrams

문제

Given an array of strings strs, group the anagrams together. You can return the answer in any order.

An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once.

제한사항

  • 1 <= strs.length <= 104
  • 0 <= strs[i].length <= 100
  • strs[i] consists of lowercase English letters.

풀이

정렬해서 키 값을 만든 다음 원래 문자열을 해시맵에 해당 키의 value로 저장한다.

해시맵에 values를 리턴하면된다.

class Solution:
    def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
        keys = [''.join(sorted(a)) for a in strs]
        hash_map = {}
        
        for i, key in enumerate(keys):
            hash_map.setdefault(key, [])
            hash_map[key].append(strs[i])
            
        return hash_map.values()
반응형
Comments