数据结构珠玑——unordered_map
以下代码未优化且速度不快,主要为了数据结构
/*
* @lc app=leetcode.cn id=347 lang=cpp
*
* [347] 前 K 个高频元素
*/
// @lc code=start
class Solution {
public:
vector<int> topKFrequent(vector<int>& nums, int k) {
unordered_map<int,int> map;
for (int& num : nums)
++map[num];
vector<pair<int, int>> A;
for (auto& it : map) {
A.emplace_back(it);
}
sort(A.begin(), A.end(), [](pair<int, int> a, pair<int, int> b)
{ return a.second > b.second; });
vector<int> kth;
for (int i = 0; i < k; ++i)
kth.emplace_back(A[i].first);
return kth;
}
};