给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。
示例 1:
输入: nums = [1,1,1,2,2,3], k = 2
输出: [1,2]
示例 2:
输入: nums = [1], k = 1
输出: [1]
class Solution {
public:
vector<int> topKFrequent(vector<int>& nums, int k) {
unordered_map<int,int>pin;
for(int num:nums)
{
pin[num]++;
}
vector<pair<int,int>>pinV(pin.begin(),pin.end());
sort(pinV.begin(),pinV.end(),[](pair<int,int>&a,pair<int,int>&b){
return a.second>b.second;
});
vector<int>re;
for(int i=0;i<k;i++)
{
re.push_back(pinV[i].first);
}
return re;
}
};
标签:vector,pin,nums,int,元素,示例,347,高频,pinV
From: https://www.cnblogs.com/donghao99/p/18183720