LeetCode 104 Anagrams
来源:互联网 发布:硬盘文件加密软件 编辑:程序博客网 时间:2024/05/21 09:59
Given an array of strings, return all groups of strings that are anagrams.
Note: All inputs will be in lower-case.
分析:
anagram就是异形词,就是有相同的字母组成,但是顺序不同形成的单词。
首先,判断异形词可以通过先排序后相等的方式,
其次,用HashMap把异形词组织起来,
最后,把所以异形词组按顺序加入结果集。
public class Solution { public List<String> anagrams(String[] strs) { List<String> res = new ArrayList<String>(); if(strs==null || strs.length==0) return res; HashMap<String, ArrayList<String>> map = new HashMap<String, ArrayList<String>>(); for(String item : strs){ char[] charArr = item.toCharArray(); Arrays.sort(charArr); String newStr = new String(charArr); if(map.containsKey(newStr)){ map.get(newStr).add(item); }else{ ArrayList<String> list = new ArrayList<String>(); list.add(item); map.put(newStr, list); } } for(ArrayList<String> list : map.values()){ if(list.size() > 1) res.addAll(list); } return res; }}
0 0
- LeetCode 104 Anagrams
- LeetCode: Anagrams
- LeetCode: Anagrams
- LeetCode Anagrams
- Leetcode: Anagrams
- [Leetcode] Anagrams
- LeetCode : Anagrams
- [leetcode] anagrams
- LeetCode Anagrams
- [LeetCode] Anagrams
- [LeetCode]Anagrams
- [leetcode]Anagrams
- leetcode anagrams
- [leetcode] Anagrams
- LeetCode-Anagrams
- LeetCode - Anagrams
- Leetcode: Anagrams
- 【Leetcode】Anagrams
- eclipse安装jdt
- Android开发:LayoutParams的用法
- junit4是如何运行的呢?
- 安卓SAX解析XML文件
- 记录自己收藏的博客资源、技术资源、微博等资源的链接以备后用!!!!!
- LeetCode 104 Anagrams
- strlen 与sizeof的区别
- Spring的事务管理难点剖析(7):数据连接泄漏
- GNU Binutils
- Android优化之软引用和弱引用
- c#经典面试题—猫叫,主人醒,老鼠跑(事件的处理)
- 关于typedef的用法总结(真理真是越辩越明)
- QtSpeech会让Qt说话
- jquery-direct.js 大大简化js 异步调用服务器端的方法