LeetCode #347. Top K Frequent Elements
来源:互联网 发布:三年工作经验的程序员 编辑:程序博客网 时间:2024/06/10 11:24
题目要求:
Given a non-empty array of integers, return the k most frequent elements.
For example,
Given [1,1,1,2,2,3] and k = 2, return [1,2].
即求出线最频繁的前K个数。要求时间复杂度不大于O(nlogn).明显就是先hash存起来,然后排序,拿到前k个值即可。写的不是很好,如果有更好的算法实现请接评论
public List<Integer> topKFrequent(int[] nums, int k) { ArrayList<Integer> kFrequent = new ArrayList<Integer>(); HashMap<Integer, Integer> cacheMap = new HashMap<Integer, Integer>(); for (int i : nums) { if (!cacheMap.containsKey(i)) { cacheMap.put(i, 1); continue; } int count = cacheMap.get(i) + 1; cacheMap.put(i, count); } ArrayList<Map.Entry<Integer,Integer>> list = new ArrayList<Map.Entry<Integer, Integer>>(cacheMap.entrySet()); Collections.sort(list, new Comparator<Map.Entry<Integer, Integer>>() { @Override public int compare(Map.Entry<Integer, Integer> o1, Map.Entry<Integer, Integer> o2) { return o2.getValue() - o1.getValue(); } }); int count = 0; while (count++ < k) kFrequent.add(list.get(count).getKey()); return kFrequent; }
2 0
- LeetCode #347. Top K Frequent Elements
- [leetcode] 347. Top K Frequent Elements
- LeetCode 347. Top K Frequent Elements
- <LeetCode OJ> 347. Top K Frequent Elements
- LeetCode 347. Top K Frequent Elements
- Leetcode 347. Top K Frequent Elements
- LeetCode Everyday: 347. Top K Frequent Elements
- 【leetcode】347. Top K Frequent Elements
- leetcode 347.Top K Frequent Elements
- leetcode 347. Top K Frequent Elements
- leetcode 347. Top K Frequent Elements
- [leetcode]347. Top K Frequent Elements
- LeetCode-347.Top K Frequent Elements
- Leetcode 347.Top K Frequent Elements
- Leetcode 347. Top K Frequent Elements
- 【LeetCode】347. Top K Frequent Elements
- [leetcode] 347. Top K Frequent Elements
- leetcode-java-347. Top K Frequent Elements
- ExtJS5 +Spring MVC CRUD
- 最简单的UIScrollView 下拉刷新思路
- 【每周一文】A Primer On Neural Network Models for NLP
- JSP内置对象
- Ubuntu创建启动快捷方式
- LeetCode #347. Top K Frequent Elements
- 禁用ViewPager边界滑动效果
- java基础
- Swift基础05
- java泛型之泛型边界
- list集合
- Numpy matrix矩阵属性详解及方法
- ExpandableListView的使用,实现类似QQ好友列表
- 【代码库】