- Problem
- 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.
- Constraints
- 1 <= strs.length <= 104
- 0 <= strs[i].length <= 100
- strs[i] consists of lowercase English letters.
class Solution {
public List<List<String>> groupAnagrams(String[] strs) {
HashMap<String, List<String>> hmap = new HashMap<>();
for(String s : strs){
char[] ch = s.toCharArray();
Arrays.sort(ch);
String temp = String.valueOf(ch);
if(hmap.get(temp)==null) hmap.put(temp, new ArrayList<String>());
hmap.get(temp).add(s);
}
return new ArrayList<>(hmap.values());
}
}
'알고리즘과 자료구조 > OJ' 카테고리의 다른 글
LeetCode 819. Most Common Word(StringBuilder 이용) (0) | 2021.09.12 |
---|---|
LeetCode 937. Reorder Data in Log Files(Lamda식을 이용한 sort) (0) | 2021.09.04 |
Leetcode 344. Reverse String (0) | 2021.08.30 |
LeetCode 125. Valid Palindrome, java (0) | 2021.08.29 |