49. Group Anagrams

convert string to char[], and then sort char[]; add to HashMap

class Solution {
    public List<List<String>> groupAnagrams(String[] strs) {
        HashMap<String, List<String>> memo = new HashMap<String, List<String>>();
        
        for(String str : strs){
            char[] charArray=str.toCharArray();
            
            //method: Arrays.sort()
            Arrays.sort(charArray);
            
            //method: String.valueOf(Array), convert char[] to string
            String key = String.valueOf(charArray);
            //method hashMap.getOrDefault
            List<String> value = memo.getOrDefault(key, new LinkedList<String>());
            value.add(str);
            memo.put(key, value);
        }
        //method: hashMap.values() 
        return new ArrayList<>(memo.values());
    }
}

Last updated