5.【附加题】– 本公司现在要给公司员工发波福利,在员工工作时间会提供大量的水果供员工补充营养。
由于水果种类比较多,但是却又不知道哪种水果比较受欢迎,然后公司就让每个员工报告了自己最爱吃的k种水果,
并且告知已经将所有员工喜欢吃的水果存储于一个数组中。然后让我们统计出所有水果出现的次数,
并且求出大家最喜欢吃的前k种水果。

void GetFavoriteFruit(const vector& fruits,size_t k);

ps:要求打印出最喜欢的水果,并且效率尽可能的高。
提示:尽量STL的容器和算法,这样能更快速高效的实现。

#include<iostream>
#include<map>
#include<vector>
#include<string>
#include <algorithm>
using namespace std;bool myfunction(map<string,int>::iterator l,map<string,int>::iterator r)
{return l->second > r->second;
}
void SelectTop(map<string,int>& CountMap,size_t k)
{vector<map<string,int>::iterator>  v;map<string,int>::iterator it=CountMap.begin();while (it!=CountMap.end()){v.push_back(it);it++;}sort(v.begin(),v.end(),myfunction);//3.打印前K个元素for (size_t j=0;j<k;j++){cout<<v[j]->first<<"-"<<v[j]->second<<endl;}
}
void GetFavoriteFruit(const vector<string>& fruits,size_t k)
{//1.统计所有水果出现的次数map<string,int> CountMap;for (size_t i=0;i<fruits.size();i++){CountMap[fruits[i]]++;}//2.根据水果次数的大小,最map中的元素进行排序SelectTop(CountMap,k);
}
int main()
{vector<string>  v;v.push_back("苹果");v.push_back("香蕉");v.push_back("橘子");v.push_back("桃子");v.push_back("香蕉");v.push_back("苹果");v.push_back("核桃");v.push_back("西瓜");v.push_back("樱桃");v.push_back("杨梅");v.push_back("火龙果");v.push_back("菠萝");v.push_back("苹果");  v.push_back("西瓜");v.push_back("桃子");v.push_back("葡萄");v.push_back("西瓜");v.push_back("苹果");v.push_back("杏子");v.push_back("苹果");v.push_back("菠萝");v.push_back("哈密瓜");v.push_back("苹果");v.push_back("香蕉");v.push_back("苹果");v.push_back("西瓜");v.push_back("杨梅");v.push_back("菠萝");v.push_back("梨");v.push_back("苹果");v.push_back("苹果");  v.push_back("西瓜");v.push_back("香蕉");v.push_back("苹果");v.push_back("葡萄");v.push_back("苹果");GetFavoriteFruit(v,3);
}

统计公司员工喜欢吃的水果,并打印出最喜欢吃的前K中水果【map关联式容器,k/V结构】相关推荐

  1. 面试题:找出公司员工最喜欢的k种水果

    1.问题 本公司现在要给公司员工发波福利,在员工工作时间会提供大量的水果供员工补充营养.由于水果种类比较多,但是却又不知道 哪种水果比较受欢迎,然后公司就让每个员工报告了自己最爱吃的k种水果,并且告知 ...

  2. 基于安卓的公司员工考勤系统的设计与实现

    目 录 1 绪论 1 1.1 选题背景 1 1.2 研究现状 2 1.3 研究意义 3 1.4 研究内容 3 2 相关的理论和技术 4 2.1 JAVA技术与安卓介绍 4 2.2 Android的开发 ...

  3. (附源码)ssm物流公司员工管理系统 毕业设计 261625

    基于ssm物流公司员工管理系统 摘  要 随着互联网大趋势的到来,社会的方方面面,各行各业都在考虑利用互联网作为媒介将自己的信息更及时有效地推广出去,而其中最好的方式就是建立网络管理系统,并对其进行信 ...

  4. 银行IT软件服务的公司 (不包括被收购的企业),统计国内员工人数比较多的企业

    (一)国际IT软件类公司 1.1.1       IBM 1.1.2       ORACLE 1.1.3       微软 1.1.4       EMC 1.1.5       SAP 1.1.6 ...

  5. 收藏网页版小游戏:蜘蛛纸牌、扫雷、水果忍者、打地鼠、吃豆人

    学习之余当然是摸鱼了,这里分享几个不用下载直接在线玩耍的游戏.有蜘蛛纸牌网页版在线玩.在线扫雷小游戏.在线玩的水果忍者.吃豆人.打地鼠.3D模仿. 下面我将一个个列出来.欢迎体验收藏! 蜘蛛纸牌:这是 ...

  6. mysql怎么看实例名_南方“中看不中吃”的前4名水果,莲雾只是垫底,你怎么看?...

    水果很多人都喜欢吃,南方人可以说是最幸福的,因为南方的水果种类有很多种,而且水果的价格也很便宜,一年四季都能吃到便宜又好吃的水果,南方的很多水果,北方人可能都没有吃过,虽然南方的水果种类多,但是也有一 ...

  7. 【剑指 offer】—— 为公司员工的年龄排序

    快速排序虽然总体的平均效率是最好的,但也不是在任何时候都是最优的算法.比如数组本身已经是排好序了,而每一轮排序的时候都是以最后一个数字作为比较的标准,此时快速排序的效率只有 O(n2)O(n^2).因 ...

  8. 微信食堂就餐人数统计小程序开发,微信饭堂报餐人数,怎样统计公司每日就餐人数,就餐人数不固定如何统计,制作报餐微信小程序

    单位食堂想控制成本 ,想弄个小程序 ,只要实现扫二维码预约第二天吃饭和扫二维码领餐 ,方便后厨统计预约人数做饭 并统计就餐人头看看谁不来, 没预约就不让吃饭.如何实现每天用餐报数,统计就餐人数的小程序 ...

  9. 从数据分析,看公司员工流失率分析报告

    一.概述: 1.员工离职和员工流失率的概念: 员工离职:员工被辞退及辞职.不续签的情况 员工流失率(离职率):公司离职的员工人数/(入职人数+最初原有人数)*100% 例如:月离职率=本月离职人数/( ...

最新文章

  1. c语言将数组中奇数放在另一个数组,把数组中所有的奇数放在另一个数组中返回...
  2. koa --- [MVC实现之四]Router、Controller、Service的实现
  3. 从零开始实现 ASP.NET Core MVC 的插件式开发(七) - 问题汇总及部分问题解决方案...
  4. memento模式_Java中的Memento设计模式-示例教程
  5. JS~~~ 前端开发一些常用技巧 模块化结构 命名空间处理 奇技淫巧!!!!!!...
  6. mysql对称连接什么意思_对称加密与非对称加密的区别是什么
  7. 快手直播伴侣因计算机丢失,在电脑上安装快手直播伴侣,却说因为计算机丢失MSVCP140.DOLL怎么办???...
  8. iframe 模拟ajax文件上传and formdata ajax 文件上传
  9. CSS命名规范(规则)常用的CSS命名规则
  10. PMP课程笔记:第4章 项目整合管理
  11. DevExpress VCL Subscription 版本:21.1.5
  12. 上周回顾:DNS漏洞被泄 华为辞职门再起风波
  13. windows无法更改密码解决办法
  14. AVL树【图示详解+代码实现】
  15. POI之Excel单元格样式
  16. matlab半小提琴图,matplotlib – 分开的小提琴图的一半,以比较尾部数据
  17. tensor.view().permute()
  18. android sd卡名称,科普详解Android系统SD卡各类文件夹名称
  19. coun(1) count(字段) count(*) 结果不一致问题
  20. 2015年Android作品集

热门文章

  1. Quora精选:为什么软件开发周期总是预估的2~3倍?
  2. Android Studio清单文件合并规则
  3. windows下载安装配置Geany
  4. linkedin 架构_投票:您如何使用LinkedIn?
  5. 【时序】TFT:具有可解释性的时间序列多步直接预测 Transformers
  6. 查看计算机远程端口,如何查看服务器远程端口号.doc
  7. 计算机起始时间1970
  8. OPENWRT修改网卡MAC地址
  9. Apache Kafka的流式SQL引擎——KSQL
  10. mysql字符集与校对规则设置_MySQL 字符集与校对规则