9
0
0

力扣hot2-字母异位词分组

文章摘要
|

说白了,就是哈希。

思路其实挺简单的,我们可以遍历数组,对每个数组进行排序,这样每个异位词的字母顺序固然是一样的。然后把他们自己作为key去查map里是否包含这个key,包含的话我们拿到列表写入本次循环拿到的字符串,不包含则是创建新的。

class Solution {
    public List<List<String>> groupAnagrams(String[] strs) {
        Map<String,String> map = new HashMap<String, List<String>>();
        for(String str:strs){
           char [] array = str.toCharArray();
           Array.sort(array);
           String key = new String(char);
           List<String> list = map.getOrDefault(key,new ArrayList<String>());
           list.add(str);
           map.put(key,list);
        }
    }
}

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或者给予支持!

评论