class Solution {
public:
vector<int> topKFrequent(vector<int>& nums, int k) {
unordered_map<int, int> mp;
for(int i=0;i<nums.size();i++)
{
mp[nums[i]]++;
}
priority_queue<pair<int,int>, vector<pair<int, int>>, greater<pair<int, int>>>minH;
for(auto x:mp)
{
minH.push({x.second, x.first});
if(minH.size()>k) minH.pop();
}
vector<int> ans;
while(!minH.empty())
{
ans.push_back(minH.top().second);
minH.pop();
}
return ans;
}
};
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter