字母异位词分组

给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。

字母异位词 是由重新排列源单词的所有字母得到的一个新单词。

示例 1:

输入: strs = ["eat", "tea", "tan", "ate", "nat", "bat"]

输出: [["bat"],["nat","tan"],["ate","eat","tea"]]

示例 2:

输入: strs = [""]

输出: [[""]]

示例 3:

输入: strs = ["a"]

输出: [["a"]]

解法:

js 复制代码
/**
 * @param {string[]} strs
 * @return {string[][]}
 */
var groupAnagrams = function(strs) {
    if(strs.length===1) return [strs]
    const strsList = strs.map(str=>str.split('').sort().join())
    const map = {}
    for(let i=0;i<strs.length;i++){
        let key = strsList[i],value = strs[i]
        if(map[key]){
            map[key].push(value)
        } else {
            map[key] = [value]
        }
    }
    return Object.values(map)
};
相关推荐
六毛的毛6 小时前
填充每个节点的下一个右侧节点指针
leetcode
怕浪猫6 小时前
React从入门到出门第三章 虚拟 DOM 与并发渲染基础
前端·javascript·react.js
gihigo19986 小时前
LDPC码硬判决译码算法的详细解析
网络·算法
Clarence Liu6 小时前
快慢指针问题
后端·算法
Swift社区6 小时前
LeetCode 467 环绕字符串中唯一的子字符串
算法·leetcode·职场和发展
Yzzz-F6 小时前
P3870 [TJOI2009] 开关[线段树(区间加 区间和 变种)]
算法
yangpipi-6 小时前
《C++并发编程实战》第6章 设计基于锁的并发数据结构
开发语言·数据结构·c++
名誉寒冰6 小时前
基于 React + Three.js + 大模型的全息地球 Web 项目(水个web课程设计)
前端·javascript·react.js·ai编程
wen__xvn6 小时前
代码随想录算法训练营DAY7第三章 哈希表part02
数据结构·算法·散列表
代码游侠6 小时前
应用——Linux Framebuffer 图形库显示
linux·运维·服务器·数据库·笔记·算法