문제
애너그램 : ate=tea=eat > 같은 문자들로 문자열을 재배열
애너그램끼리 그룹짓는 문제이다.
풀이
class Solution:
def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
dic = collections.defaultdict(list)
for arr in strs:
tmp = ''.join(sorted(arr)) #sorted(arr) -> list 반환, sorted("tea")=['a', 'e', 't']
dic[tmp].append(arr)
return dic.values()
sorted()는 리스트, 문자, 숫자 모두 정렬이 가능하다 list 형으로 반환한다. (용도에 맞게 join 하기)
반응형