当前位置: 首页 > article >正文

LeetCode —— 字母异位词分组

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

示例 1:

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

示例 2:

输入: strs = [""]
输出: [[""]]

示例 3:

输入: strs = ["a"]
输出: [["a"]]

提示:

1 <= strs.length <= 104
0 <= strs[i].length <= 100
strs[i] 仅包含小写字母

实现代码

/**
 * @param {string[]} strs
 * @return {string[][]}
 */
var groupAnagrams = function (strs) {
    let objTemp = {}, itemTemp = {};
    for (let i = 0; i <= strs.length - 1; i++) {
        itemTemp = Array.from(strs[i]).sort().join("");

        if (Object.keys(objTemp).indexOf(itemTemp) > -1) {
            objTemp[itemTemp].push(strs[i]);
        } else {
            objTemp[itemTemp] = new Array(strs[i]);
        }
    }
    // console.log(objTemp);

    let result = [];
    Object.values(objTemp).map(item => {
        result.push(item.sort());
    })

    result.sort((a, b) => a.length - b.length);
    // console.log(result);
    return result;
};

http://www.kler.cn/a/404768.html

相关文章:

  • 优化表单交互:在 el-select 组件中嵌入表格显示选项
  • 241121学习日志——[CSDIY] [InternStudio] 大模型训练营 [11]
  • 微信小程序组件详解:bottom 和 image 组件的基本用法
  • 07点积与叉积
  • 从技术到产品:第三方美颜API助力实时直播平台的开发详解
  • Spark RDD 的宽依赖和窄依赖
  • Linux 定时任务全解析
  • Spring Cloud Alibaba、Spring Cloud 与 Spring Boot各版本的对应关系
  • 【docker】docker commit 命令 将当前容器的状态保存为一个新的镜像
  • RK3588开发笔记-sata概率性不能识别问题解决
  • 05_Spring JdbcTemplate
  • 【软件开发】如何理解异地多活?
  • 网络安全的学习路线
  • mysql安装---rpm包
  • Flutter-Web首次加载时添加动画
  • [STM32]从零开始的STM32 HAL库环境搭建
  • NuGet如何支持HTTP源
  • 【鸿蒙开发】基础干货篇--6 “超简单持久化存储PersistentStorage”
  • 汽车资讯新视界:Spring Boot技术启航
  • 期权懂|期权中的行权和平仓的区别在于哪里?
  • 17. Linux下在虚拟环境中安装CUDA和CUDNN
  • 安装JDK
  • 数据跨网传输无忧:FileLink打造内外网文件传输的安全桥梁
  • 【使用 Docker 搭建云原生后端环境的详细教程】
  • 近期两篇NeRF/3DGS-based SLAM方案赏析:TS-SLAM and MBA-SLAM
  • 手写模拟Spring Boot启动过程功能