C/C++教程

leetcode.49. 字母异位词分组

本文主要是介绍leetcode.49. 字母异位词分组,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

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

字母异位词 是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次。

 

示例 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] 仅包含小写字母

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/group-anagrams
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

    class Solution {     public List<List<String>> groupAnagrams(String[] strs) {         HashMap<String,ArrayList<String>>map=new HashMap();         for(String s: strs){             char [] ch=s.toCharArray();             Arrays.sort(ch);             String key=String.valueOf(ch);             if(!map.containsKey(key)) map.put(key,new ArrayList());             map.get(key).add(s);         }         return new ArrayList(map.values());     } }
这篇关于leetcode.49. 字母异位词分组的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!