Top K Frequent Elements=-leetcode
来源:互联网 发布:淘宝卖家需求 编辑:程序博客网 时间:2024/05/29 15:36
题目
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].
Note:
You may assume k is always valid, 1 ≤ k ≤ number of unique elements.
Your algorithm’s time complexity must be better than O(n log n), where n is the array’s size.
Subscribe to see which companies asked this question
具体题目见网址https://leetcode.com/problems/top-k-frequent-elements/
代码一
class Solution {public: vector<int> topKFrequent(vector<int>& nums, int k) { unordered_map<int, int> count; for(vector<int>::iterator it=nums.begin();it!=nums.end();++it) ++count[*it]; multimap<int,int,greater<int>> VecSort; for( unordered_map<int, int>::iterator it=count.begin();it!=count.end();++it) { VecSort.insert(pair<int, int>((it->second), it->first)); } vector<int> result(k,0); multimap<int,int>::iterator it=VecSort.begin(); for (int i = 0; i <k; ++i,++it) { result[i]=it->second; } return result; }};
代码二
class Solution {public:static bool cmp_by_value(const pair<int,int>& lhs, const pair<int,int>& rhs) { return lhs.second > rhs.second; } vector<int> topKFrequent(vector<int>& nums, int k) { unordered_map<int, int> count; for(vector<int>::iterator it=nums.begin();it!=nums.end();++it) ++count[*it]; vector<pair<int,int> > name_score_vec(count.begin(), count.end()); sort(name_score_vec.begin(), name_score_vec.end(), cmp_by_value); vector<int> result(k,0); for (int i = 0; i <k; ++i) { result[i]=name_score_vec[i].first; } return result; }};
2 0
- Top K Frequent Elements=-leetcode
- LeetCode|Top K Frequent Elements
- 【Leetcode】Top K Frequent Elements
- LeetCode:Top K Frequent Elements
- [LeetCode] Top K Frequent Elements
- LeetCode:Top K Frequent Elements
- 【leetcode】Top K Frequent Elements
- LeetCode Top K Frequent Elements
- LeetCode:Top K Frequent Elements
- leetcode:Top K Frequent Elements
- LeetCode Top K Frequent Elements
- leetcode Top K Frequent Elements
- LeetCode: Top K Frequent Elements
- LeetCode Top K Frequent Elements
- [LeetCode] Top K Frequent Elements
- LeetCode : Top K Frequent Elements
- Leetcode Top K Frequent Elements
- [leetcode]Top K Frequent Elements
- 动态代理模式
- Yii2.0 RESTful Web服务(3)
- HDOJ(HDU) 2503 a/b + c/d(最大公约数问题)
- jvm内存调优
- Java架构中的常见设计模式
- Top K Frequent Elements=-leetcode
- 删繁就简 - 云和恩墨的一道面试题解析
- 进程不具有此命名空间的访问权限
- p3p种cookie
- java.lang.NoClassDefFoundError: org/jaxen/JaxenException
- Jquery attr("checked") attr("selected") 失效的问题
- 让世界来点动静
- SpringBoot(非spring-webmvc)访问Mongodb例子
- 算法竞赛入门10.1数论初步例题代码