首页 > 其他 > 详细

Anagrams

时间:2014-08-14 20:39:29      阅读:340      评论:0      收藏:0      [点我收藏+]

Given an array of strings, return all groups of strings that are anagrams.

Note: All inputs will be in lower-case.

public class Solution {
    public List<String> anagrams(String[] strs) {
        List<String> result=new LinkedList<String>();
        Map<String,LinkedList<String>> map=new HashMap<String,LinkedList<String>>();
        if(strs==null || strs.length==0) return result;
        for(int i=0;i<strs.length;i++){
            char []arr=strs[i].toCharArray();
            Arrays.sort(arr);
            String s=new String(arr);
            
            if(map.containsKey(s)){
                map.get(s).add(strs[i]);
            }
            else{
                LinkedList<String> list=new LinkedList<String>();
                list.add(strs[i]);
                map.put(s,list);
            }
        }
        Set<String> set=map.keySet();
        for(String s : set){
            if(map.get(s).size()>1){
                result.addAll(map.get(s));
            }
        }
        return result;
    }
}
题目没看懂的节奏,看懂了就很简单了。

Anagrams,布布扣,bubuko.com

Anagrams

原文:http://blog.csdn.net/dutsoft/article/details/38562597

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!