49. Group Anagrams
Leetcode
題目
解答
var groupAnagrams = function(strs) {
var isAnagram = function(s, t) {
if(s.length != t.length) return false;
const hash1 = {};
const hash2 = {};
for(let i=0; i<s.length; i++) {
const value1 = s[i];
if(hash1[value1]) hash1[value1]++;
else hash1[value1] = 1;
const value2 = t[i];
if(hash2[value2]) hash2[value2]++;
else hash2[value2] = 1;
}
for(let key of Object.keys(hash1)) {
if(hash1[key] !== hash2[key]) return false;
}
return true;
};
const arr = []
for(let i=0; i<strs.length; i++) {
let isMatch = false;
for(let j=0; j<arr.length; j++) {
if(isAnagram(strs[i], arr[j][0])) {
isMatch = true;
arr[j].push(strs[i]);
break;
}
}
if(!isMatch) arr.push([strs[i]]);
}
return arr;
};相關題目
測資
Last updated