133

来源:互联网 发布:淘宝开店怎么做代销 编辑:程序博客网 时间:2024/05/22 12:29

4.11

用一个map映射,通过长度对单词分组。

最后直接返回 length最长的就可以。

class Solution {    /**     * @param dictionary: an array of strings     * @return: an arraylist of strings     */    ArrayList<String> longestWords(String[] dictionary) {        int count = dictionary.length;        if(count == 0){            return null;        }HashMap<Integer,ArrayList<String>> map = new HashMap<Integer,ArrayList<String>>();int max = 0;for(int i = 0;i < count;i++){int length = dictionary[i].length();if(length >= max){max = length;}if(!map.containsKey(length)){ArrayList<String> tmp = new ArrayList<String>();tmp.add(dictionary[i]);map.put(length, tmp);}else{map.get(length).add(dictionary[i]);}}ArrayList<String> list = map.get(max);        return list;    }};


0 0
原创粉丝点击