leetcode 49. 字母异位词分组(排序+hash)
生活随笔
收集整理的這篇文章主要介紹了
leetcode 49. 字母异位词分组(排序+hash)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給定一個字符串數組,將字母異位詞組合在一起。字母異位詞指字母相同,但排列不同的字符串。
示例:
輸入: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]
輸出:
[
[“ate”,“eat”,“tea”],
[“nat”,“tan”],
[“bat”]
]
代碼
class Solution {public List<List<String>> groupAnagrams(String[] strs) {List<List<String>> lists=new ArrayList<>();Map<String ,List<String>> map=new HashMap<>();for(String s:strs){char[] check=s.toCharArray();Arrays.sort(check);String temp=String.valueOf(check);//通過排序獲取當前字符串的字典序排列if(!map.containsKey(temp) )map.put(temp,new ArrayList<>());map.get(temp).add(s);//一個字典序字符串對應一組字母異位詞}lists.addAll(map.values());return lists;} }總結
以上是生活随笔為你收集整理的leetcode 49. 字母异位词分组(排序+hash)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 梦到小姑子来我家怎么解
- 下一篇: 女人做梦梦到大公鸡是什么意思