Anagrams

来源:互联网 发布:淘宝联盟拍了却没订单 编辑:程序博客网 时间:2024/06/08 08:16

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;    }}
题目没看懂的节奏,看懂了就很简单了。

0 0