From 5199f568dec8492501785a94b432eaa4897f4d1a Mon Sep 17 00:00:00 2001 From: Rahul Gupta <59743796+rahul22nrp@users.noreply.github.com> Date: Tue, 25 May 2021 12:20:51 +0530 Subject: [PATCH] Create Top K Frequent Elements --- Top K Frequent Elements | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 Top K Frequent Elements diff --git a/Top K Frequent Elements b/Top K Frequent Elements new file mode 100644 index 0000000..c11763f --- /dev/null +++ b/Top K Frequent Elements @@ -0,0 +1,18 @@ +vector topKFrequent(vector& nums, int k) { + unordered_map map; + for(int num : nums){ + map[num]++; + } + + vector res; + // pair: first is frequency, second is number + priority_queue> pq; + for(auto it = map.begin(); it != map.end(); it++){ + pq.push(make_pair(it->second, it->first)); + if(pq.size() > (int)map.size() - k){ + res.push_back(pq.top().second); + pq.pop(); + } + } + return res; + }