diff options
Diffstat (limited to 'other/top_k_freq_words.cpp')
-rw-r--r-- | other/top_k_freq_words.cpp | 29 |
1 files changed, 0 insertions, 29 deletions
diff --git a/other/top_k_freq_words.cpp b/other/top_k_freq_words.cpp deleted file mode 100644 index eaf31d5..0000000 --- a/other/top_k_freq_words.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#include "leetcode.h" - -struct Compare { - bool operator()(pair<int, string> a, pair<int, string> b) { - if (a.first == b.first) - return a.second > b.second; - else - return a.first < b.first; - } -}; - -class Solution { -public: - vector<string> topKFrequent(vector<string> &words, int k) { - unordered_map<string, int> um; - for (int i = 0; i < words.size(); i++) - um[words[i]]++; - priority_queue<pair<int, string>, vector<pair<int, string>>, Compare> - pqpvpc; - for (auto i : um) - pqpvpc.push({i.second, i.first}); - vector<string> ans; - while (k--) { - ans.push_back(pqpvpc.top().second); - pqpvpc.pop(); - } - return ans; - } -}; |