题目
代码:
class Solution {
public:
vector<string> topKFrequent(vector<string>& words, int k) {
unordered_map<string,int>hash;
for(auto t:words){
hash[t]++;
}
vector<pair<string,int>>table;
for(auto t:hash){
table.push_back(t);
}
sort(table.begin(),table.end(),cmp);
vector<string>res;
for(int i=0;i<k;i++){
if(table[i].second)
res.push_back(table[i].first);
}
return res;
}
private:
static bool cmp(pair<string,int>a,pair<string,int>b){
if(a.second==b.second)
return a.first<b.first;
return a.second>b.second;
}
};