题目链接
法一
public List<List<String>> groupAnagrams(String[] strs) {
Map<String, List<String>> mp = new HashMap<>();
for (String str : strs) {
char[] chars = str.toCharArray();
Arrays.sort(chars);
mp.computeIfAbsent(String.valueOf(chars), key -> new ArrayList<>()).add(str);
}
return new ArrayList<>(mp.values());
}
本地测试
lay.showTitle(49);
String[] strs49 = new String[]{"eat", "tea", "tan", "ate", "nat", "bat"};
Solution49 sol49 = new Solution49();
List<List<String>> ans49 = sol49.groupAnagrams(strs49);
arrayOpt.showStringLists(ans49);