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

做资源网站百度关键字排名软件

做资源网站,百度关键字排名软件,如何在凡科建设网站,做的网站百度上可以搜到吗题目来源:力扣 题目描述: 给定一个单词列表 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/50700.html

相关文章:

  • 哈尔滨建设局网站优化外包价格
  • 做网站赚钱嘛软文代写网
  • 做算命网站挣钱吗微博营销策略
  • 做网站和淘宝美工 最低电脑郑州seo顾问外包
  • 做视频添加字幕的网站全网营销代运营
  • wordpress 交友seo关键词排名价格
  • 望城建设局网站营销宣传图片
  • 广东购物网站建设哪家好营销计划
  • 一级a做爰片免费网站国产网络优化工程师招聘信息
  • 安阳网站设计哪家专业2023年免费b站推广大全
  • 闵行营销型网站制作网站建设关键词排名
  • 加盟型网站建设seo外包多少钱
  • 网站建设 北京快速网站推广
  • 建筑模版东莞网站建设技术支持2022拉人头最暴利的app
  • 网站建设小故事网络培训平台有哪些
  • 大数据比赛网站建设seo关键词分类
  • 网站网络营销推广制作竞价推广论坛
  • 织梦手机网站分亨链接怎么做外包网络推广
  • 通辽做网站建设罗湖区seo排名
  • 学校网站建设及使用档案seo标题生成器
  • 做网站如何安全 博客网站推广应该坚持什么策略
  • 中国建设银行网站首页英文网站搭建费用
  • 网站建设公司织梦模板西安官网seo公司
  • 网站优化公司电话自媒体平台注册入口
  • 斯特云流量网站营销方案案例范文
  • 最近一周体育新闻大事绍兴seo外包
  • 自己开公司 自己做网站品牌营销策略有哪些
  • 做网站的公司有哪些三亚百度推广公司电话
  • 免费建微网站平台网络营销的未来6个发展趋势
  • 太原网站建设价格福州seo博客