首页 > 编程 > Java > 正文

[LeetCode] 49. Group Anagrams java

2019-11-06 06:19:03
字体:
来源:转载
供稿:网友
/**49. Group Anagrams * @param strs * @returnList<List<String>> */ public List<List<String>> groupAnagrams1(String[] strs) { List<List<String>> ret = new ArrayList<List<String>>(); HashMap<String, List<String>> map = new HashMap<String, List<String>>(); for (String str: strs) { char[] arr = str.toCharArray(); Arrays.sort(arr); String sortStr = String.valueOf(arr); if (map.containsKey(sortStr)) { List<String> list = map.get(sortStr); list.add(str); map.put(sortStr, list); } else { List<String> list = new ArrayList<String>(); list.add(str); map.put(sortStr, list); } } Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Map.Entry) iter.next(); ret.add((List<String>) entry.getValue()); } return ret; }

//为每一个string排序,并存入map(排序后的string, 排序前的string),所以设计hashMap为:


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表