https://leetcode.com/problems/group-anagrams/
["eat","tea","tan","ate","nat","bat"]
이 배열 중에 abt
를 가지는 문자는 bat
밖에 없고 같은 원리로 ant
를 가지는 문자는 nat, tan
이렇게 분류 하는 거 같았다.tea
와 ate
는 정렬에 의해서 똑같이 aet
로 분류될 거 같았다.func groupAnagrams(_ strs: [String]) -> [[String]] {
var temp = [String: [String]]()
for i in 0..<strs.count {
let mytemp = String(strs[i].sorted())
temp[mytemp, default: []] += [strs[i]]
}
return Array(temp.values)
}
오늘 첨 알았는데 if~else문을 쓰지 않고 default: []로 초기화 할 수 있더라.