zoukankan      html  css  js  c++  java
  • Anagrams

    Anagrams

    问题:

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

    Note: All inputs will be in lower-case.

    思路:

      Anagrams:排序后的String作为Key值

    public class Solution {
        public List<String> anagrams(String[] strs) {
            List<String> list = new ArrayList<String>();
            if(strs == null || strs.length == 0)    return list;
            HashMap<String, List<String>> hashMap = new HashMap<String,List<String>>();
            for(int i = 0; i < strs.length; i++)
            {
                String val = strs[i];
                char[] array = val.toCharArray();
                Arrays.sort(array);
                String key = new String(array);
                if(hashMap.containsKey(key))
                {
                    hashMap.get(key).add(val);
                }
                else
                {
                    List<String> tmp = new ArrayList();
                    tmp.add(val);
                    hashMap.put(key, tmp);
                }
                    
            }
            for(String key: hashMap.keySet())
            {
                List<String> tmp = hashMap.get(key);
                if(tmp.size() > 1)
                {
                    list.addAll(tmp);
                }
            }
            return list;
        }
    }
    View Code
  • 相关阅读:
    图像功率结合
    三星(多星)模型
    双星模型
    卫星变轨问题
    桌面木块弹簧
    球——绳模型、球——杆模型
    汽车拐弯问题
    圆锥摆模型
    省队集训日记
    NOI前比赛经验总结
  • 原文地址:https://www.cnblogs.com/sunshisonghit/p/4339944.html
Copyright © 2011-2022 走看看