본문 바로가기

알고리즘

[해쉬] Group -anagrams - LeetCode Swift

문제 : https://leetcode.com/problems/group-anagrams/

 

Group Anagrams - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

 

풀이 방법 : 정렬해서 같은 것이 해쉬테이블 키값에 있는지 없는지 검사

 

코드

class Solution {
	func groupAnagrams(_ strs: [String]) -> [[String]] {
    	var myStrs = strs
	    var result = [String:[String]]()
    	var out = [[String]]()
    
    for pointer in strs {
        if result[String(pointer.sorted())] != nil {
            result[String(pointer.sorted())]?.append(pointer)
        } else {
            result[String(pointer.sorted())] = [pointer]
        }
    }
    
    for (key,values) in result {
        out.append(values)
    }
    return out
	}
}
반응형