class Solution {
public:
class compare{
public:
bool operator()(pair<int,int>a1,pair<int,int>a2){
return a1.second>a2.second;
}
};
vector<int> topKFrequent(vector<int>& nums, int k) {
map<int,int>mp;
priority_queue<pair<int,int>,vector<pair<int,int> >,compare>q;
for(auto t:nums){
mp[t]++;
}
for(map<int,int>::iterator it=mp.begin();it!=mp.end();it++){
q.push(*it);
if(q.size()>k){
q.pop();
}
}
vector<int>ans;
for(int i=0;i<k;i++){
ans.push_back(q.top().first);
q.pop();
}
return ans;
}
};
347. 前 K 个高频元素
于 2024-01-18 01:14:00 首次发布