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

49. Group Anagrams - LeetCode

Question

49. Group Anagrams

20180618173552.png

Solution

思路:维护一个map,key是输入数组中的字符串(根据字符排好序)

Java实现:

public List<List<String>> groupAnagrams(String[] strs) {
    Map<String, List<String>> map = new HashMap<>();
    for (String str : strs) {
        String key = getSorted(str);

        List<String> list = map.get(key);
        if (list == null) {
            list = new ArrayList<>();
            map.put(key, list);
        }
        list.add(str);

        // if (!map.containsKey(key)) map.put(key, new ArrayList());
        // map.get(key).add(str);
    }
    return new ArrayList<>(map.values()); // map转list
}

// 返回根据字符排序后的字符串 如:cba返回abc
private String getSorted(String str) {
    char[] arr = str.toCharArray();
    Arrays.sort(arr);
    // return new String(arr);
    return String.valueOf(arr); // 这样写效率更高
}

转载于:https://www.cnblogs.com/okokabcd/p/9195653.html

相关文章:

  • 1 年经验 Java 求职面试题
  • 有赞11·11:全链路压测方案设计与实施详解
  • 输入处理与安全性
  • 基于结构的距离度量
  • partprobe 和 partx 的用法
  • 开发环境问题
  • 【咸鱼教程】本地图片上传。动态GIF表情图生成
  • HTML_列表标签
  • docker基础
  • jstack
  • linux常用命令与终端快捷键总结
  • 别让程序员停止在35岁,如何让我们走得更远?
  • jQuery获取URL中的参数
  • try{ } catch (e){ }的理解
  • jQuery = 1.11.3 DomXSS漏洞
  • 345-反转字符串中的元音字母
  • C++类的相互关联
  • download使用浅析
  • js
  • nodejs实现webservice问题总结
  • Redis中的lru算法实现
  • RxJS: 简单入门
  • vue--为什么data属性必须是一个函数
  • 阿里研究院入选中国企业智库系统影响力榜
  • 不上全站https的网站你们就等着被恶心死吧
  • 高度不固定时垂直居中
  • 机器学习学习笔记一
  • 前端面试之CSS3新特性
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 微信小程序:实现悬浮返回和分享按钮
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • %check_box% in rails :coditions={:has_many , :through}
  • (排序详解之 堆排序)
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (一)基于IDEA的JAVA基础1
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .apk文件,IIS不支持下载解决
  • .NET企业级应用架构设计系列之应用服务器
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .NET与 java通用的3DES加密解密方法
  • @SuppressWarnings(unchecked)代码的作用
  • [AutoSar]BSW_OS 01 priority ceiling protocol(PCP)
  • [Bada开发]初步入口函数介绍
  • [MySQL]日期和时间函数
  • [pytest] 运行方式、常用参数、前后置条件
  • [python] 之 函数简介
  • [SAP] ABAP注释快捷键修改
  • [SDOI2005]区间
  • [SpringMVC] SSM整合-前后台协议联调
  • [SystemC]SystemC Hierarchical Channels
  • [Verilog] Verilog 基本格式和语法
  • [编程技巧] C++中优化BOOL 变量的声明
  • [豆趣]去火
  • [翻译-Shiro]-Apache Shiro Java认证指南