Code & Func
2020-01-27

第60天。hhh,一回家就没做了。在家无聊到开始找活干了。

今天的题目是347. Top K Frequent Elements :

挺简单的题目,先统计元素出现的次数,然后根据元素出现的次数来进行排序,然后取出现次数最多的前K个即可。

1
vector<int> topKFrequent1(vector<int>& nums, int k) {
2
vector<int> res(k);
3
unordered_map<int, int> imap;
4
for(int i = 0, n = nums.size(); i < n; i++) {
5
imap[nums[i]]++;
6
}
7
8
vector<pair<int, int>> temp(imap.begin(), imap.end());
9
auto f = [](const pair<int, int> &p1, const pair<int, int> &p2) {
10
return p1.second > p2.second;
11
};
12
sort(temp.begin(), temp.end(), f);
13
for(int i = 0;i < k; i++) {
14
res[i] = temp[i].first;
15
}
2 collapsed lines
16
return res;
17
}
上一条动态