当前位置: 首页 > news >正文

知名企业有哪些深圳网站seo公司

知名企业有哪些,深圳网站seo公司,微盟微商城收费标准,做网站需要什么东西题目来源:力扣 题目描述: 给定一个单词列表 words 和一个整数 k ,返回前 k 个出现次数最多的单词。 返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率, 按字典顺序 排序。 示例 1: 输入:…

题目来源:力扣

题目描述:

给定一个单词列表 words 和一个整数 k ,返回前 k 个出现次数最多的单词。

返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率, 按字典顺序 排序。

示例 1:

输入: words = ["i", "love", "leetcode", "i", "love", "coding"], k = 2
输出: ["i", "love"]
解析: "i" 和 "love" 为出现次数最多的两个单词,均为2次。注意,按字母顺序 "i" 在 "love" 之前。

示例 2:

输入: ["the", "day", "is", "sunny", "the", "the", "the", "sunny", "is", "is"], k = 4
输出: ["the", "is", "sunny", "day"]
解析: "the", "is", "sunny" 和 "day" 是出现次数最多的四个单词,出现次数依次为 4, 3, 2 和 1 次。

代码实现:
 

class Solution {
public:struct Greater{bool operator()(const pair<string,int>& kv1, const pair<string,int>& kv2){return kv1.second > kv2.second;}};vector<string> topKFrequent(vector<string>& words, int k) {map<string,int> countMap;for(const auto& e : words){countMap[e]++;}vector<pair<string,int>> KvVec(countMap.begin(),countMap.end());stable_sort(KvVec.begin(),KvVec.end(),Greater());//和sort一样,但是stable_sort是稳定的排序vector<string> ret;for(int i=0;i<k;i++){ret.push_back(KvVec[i].first);}return ret;}
};
class Solution {
public:struct Greater{bool operator()(const pair<string,int>& kv1, const pair<string,int>& kv2){return kv1.second > kv2.second || (kv1.second == kv2.second && kv1.first < kv2.first);//频率大的在前面,频率相等的情况下,就去比较字典序,小的在前面}};vector<string> topKFrequent(vector<string>& words, int k) {map<string,int> countMap;for(const auto& e : words){countMap[e]++;}vector<pair<string,int>> KvVec(countMap.begin(),countMap.end());sort(KvVec.begin(),KvVec.end(),Greater());vector<string> ret;for(int i=0;i<k;i++){ret.push_back(KvVec[i].first);}return ret;}
};

这里有两种方法,一种是正常使用sort,一种是不使用sort

class Solution {
public:vector<string> topKFrequent(vector<string>& words, int k) {map<string,int> countMap;for(const auto& e : words){countMap[e]++;}multimap<int,string,greater<int>> sortMap;//这里依赖map底层实现,有些平台可能过不了for(auto& kv : countMap){sortMap.insert(make_pair(kv.second,kv.first));}vector<string> v;auto it = sortMap.begin();while(k--){v.push_back(it->second);++it;}return v;}
};

思路:
 这道题麻烦的是按照字典序去排列,sort是对随机迭代器进行排序的,而map是双向迭代器,也就是说map是无法使用sort的,所以我们在上边倒来倒去的倒数据,这道题就是用map统计一下频率然后按频率排序即可,这里需要给sort设计一个仿函数,让频率大的在前面,如果使用原始的sort,那么会面临因为sort是不稳定的排序,所以要自己加一些条件,或者换一个稳定的排序函数,比如stable_sort,接着我们把前k个放在一个vector里返回即可

除了sort可以排序,map也可以再排序,我们反过来再搞一个multimap(map会去重)排序即可,这里需要给map传第三个模板参数,这里依赖底层实现,有的平台可能不会通过,接着一样再把前k个放入vector返回即可

http://www.zhongyajixie.com/news/53981.html

相关文章:

  • 国家企业信用信息没有网站怎么做佛山网站seo
  • 企业网站 流程重庆森林经典台词 凤梨罐头
  • app 网站 区别seo优化易下拉排名
  • 可以做外包的网站seo快速排名关键词
  • 公司网站修改怎么做深圳网站开发公司
  • 大理建设学校官方网站网站展示型推广
  • 网站做代理服务器郑州百度推广开户
  • 0511城市建设网站棚户区改造新媒体seo培训
  • 万网主机建设网站流程重庆森林
  • 网站也会过期吗疫情防控数据
  • 百度搜国外服务器Wordpress常宁seo外包
  • 做网站前期创建文件夹网上营销模式
  • 网站程序调试模式怎么做泉州全网营销推广
  • 手术直播平台手机网站搜索优化
  • 做网站是买服务器还是买主机创建网站教程
  • 网上提交报名表系统的网站建设刚刚刚刚刚刚刚刚刚刚刚刚刚刚刚
  • 惠来做网站诈骗长沙网络优化产品
  • 大名网站建设价格免费文案素材网站
  • 我想建设一个算命网站江门网站建设
  • 自动焊锡机b2b平台网站seo关键词排名教程
  • onlyoffice wordpress成都网站优化排名推广
  • wordpress加载速度慢天津seo排名收费
  • 做楼盘网站淘宝关键词优化怎么弄
  • mac wordpress 下载主题作品提示优化要删吗
  • 销售型网站设计中国第一营销网
  • 忻州网站建设百度竞价怎么操作
  • 学习java可以自己做网站吗永久免费制作网页
  • 做网站所需知识网络营销服务公司有哪些
  • 大连网站制作怎么做百度直播
  • 找事做搜索网站网络广告策划与制作