/*
 * @lc app=leetcode.cn id=49 lang=javascript
 *
 * [49] 字母异位词分组
 */

// @lc code=start
/**
 * @param {string[]} strs
 * @return {string[][]}
 */
var groupAnagrams = function (strs) {
  const hash = new Map();

  for (let i = 0; i < strs.length; i++) {
    const key = strs[i].split('').sort().join('')
    if (hash.has(key)) {
      hash.get(key).push(strs[i])
    } else {
      hash.set(key, [strs[i]])
    }
  }

  return Array.from(hash.values())
};
// @lc code=end