LeetCode 692 前K个高频单词

前K个高频单词

题目

在这里插入图片描述

思路

mapj统计,vector<pair<string,int> >排序,最后返回vector< string >。

代码

class Solution {
public:
    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;
    }
    vector<string> topKFrequent(vector<string>& words, int k) {
        unordered_map<string,int> a;
        vector<pair<string,int> > ans;
        for(int i=0;i<words.size();i++)
        {
           a[words[i]]++; 
        }
        ans.assign(a.begin(),a.end());
        sort(ans.begin(),ans.end(),cmp);
        vector<string> x;
        for(int i=0;i<k;i++)
        {
            x.push_back(ans[i].first);
        }
        return x;
    }
};
发布了173 篇原创文章 · 获赞 6 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/shidonghang/article/details/102981420