【49. 字母异位词分组】

Leetcode算法练习 笔记记录

  • 49. 字母异位词分组

49. 字母异位词分组

    public List<List<String>> groupAnagrams(String[] strs) {
        Map<String, List<String>> map = new HashMap<>();
        for (int i = 0; i < strs.length; i++) {
            //排序就是相同字符了,key相同则加入同一个list
            char[] array = strs[i].toCharArray();
            Arrays.sort(array);
            if (map.containsKey(new String(array))){
                List<String> list = map.get(new String(array));
                list.add(strs[i]);
            }else{
                List<String> list = new ArrayList<>();
                list.add(strs[i]);
                map.put(new String(array), list);
            }
        }
        return new ArrayList<>(map.values());
    }

你可能感兴趣的:(#,哈希,算法)