692. 前K个高频单词 (堆)

Posted JasonPeng1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了692. 前K个高频单词 (堆)相关的知识,希望对你有一定的参考价值。

2019-12-28

14:46:41

 熟练掌握C++ sort函数的用法

以及如何定义cmp函数

 

class Solution {
public:
    static bool cmp(const pair<string,int> &p1,const pair<string,int> &p2){
        if(p1.second > p2.second){
            return true;
        }
        if(p1.second == p2.second){
            return p1.first<p2.first;
        }
        else return false;
    }
    vector<string> topKFrequent(vector<string>& words, int k) {
        unordered_map<string,int> temp;
        vector<string> result;
        for(int i = 0;i<words.size();++i){
            temp[words[i]]++;
        }
        vector<pair<string,int>> p;
        for(pair<string,int> p1 : temp){
            p.push_back(p1);
        }
        sort(p.begin(),p.end(),cmp);
        for(int i=0;i<k;++i){
            result.push_back(p[i].first);
        }
        return result;
    }
};

以上是关于692. 前K个高频单词 (堆)的主要内容,如果未能解决你的问题,请参考以下文章

leetcode 692. 前K个高频单词

LeetCode:692. 前K个高频单词

leetcode692. 前K个高频单词

leetcode 692. 前K个高频单词

力扣练习006---前K个高频单词(692)

692. 前K个高频单词