字母异位词分组

给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。
字母异位词 是由重新排列源单词的所有字母得到的一个新单词。

  • 输入: strs = [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]

  • 输出: [[“bat”],[“nat”,”tan”],[“ate”,”eat”,”tea”]]

  • 输入: strs = [“”]

  • 输出: [[“”]]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var groupAnagrams = function(strs) {
var res = [];
var map = new Map();
for(var i=0;i<strs.length;i++){
var k = strs[i].split('').sort().join('');
if(map.has(k)){
map.get(k).push(strs[i]);
}else{
map.set(k, [strs[i]]);
}
}
map.forEach((val, key)=>{
res.push(val);
})
return res;
};