Given an array of strings, group anagrams together.
For example, given: ["eat", "tea", "tan", "ate", "nat", "bat"] ,
Return:
[" ate", "eat", "tea"], ["Nat", "Tan"], ["bat"]]
Note:all inputs'll is in lower-case.
Test instructions is the classification of isomorphic words, which is saved to the list and then returned.
1 Public classSolution {2 PublicList<list<string>>groupanagrams (string[] strs) {3map<string,arraylist<string>> map =NewHashmap<string,arraylist<string>>();4 for(String str:strs) {5String tmp =sortstr (str);6 if(Map.containskey (tmp)) {7 map.get (TMP). Add (str);8}Else{9arraylist<string> list =NewArraylist<string>();Ten List.add (str); One Map.put (tmp,list); A } - } -list<list<string>> ans =NewArraylist<list<string>>(Map.values ()); the //For (list<string> A:ans) { - //Collections.sort (a); - // } - returnans; + } - + Publicstring Sortstr (String str) { A Char[] tmp =Str.tochararray (); at Arrays.sort (TMP); - return NewString (TMP); - } -}
49.Submission Details Java Solutions