leetcode第四十九题_字母异位词分组
难度:Mediem
掌握程度:Low
var groupAnagrams = function(strs) {
if(strs.length === 0){
return [];
}
const map = new Map();
for(const str of strs){
#26个字母有对应的ascii code
const characters = Array(26).fill(0);
for(let i = 0;i<str.length;i++){
// console.log(str[i]) # e
const ascii = str.charCodeAt(i) - 97;
// console.log(str.charCodeAt(i)) #101
// console.log(ascii) #4
characters[ascii]++;
}
const key = characters.join(" ");
if(map.has(key)){
#如果有这个key,就把value push进去
// map.set(key,map.get(key).push(str))
map.set(key,[...map.get(key),str])
}else{
map.set(key,[str])
}
}
const result = [];
for (const arr of map ){
result.push(arr[1])
}
return result;
};