C++-map:获取map中value最大值、最小值对应的键值对

这篇具有很好参考价值的文章主要介绍了C++-map:获取map中value最大值、最小值对应的键值对。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

//定义比较的函数
bool cmp_value(const pair<int, int> left,const pair<int,int> right){
	return left.second < right.second;
}

int main(){
	map<int, int> test;
	//初始化
	test.emplace(10, 5);
	test.emplace(3, 17);
	test.emplace(19, 20);
	test.emplace(20, 15);
	//输出按序排列的key值
	for (auto it : test)
		cout << it.first << " ";
	cout << endl;
	//i是迭代器  返回值为19-20
	auto i= max_element(test.begin(),test.end(),cmp_value);
	cout << i->first << i->second << endl;
}

简述:通过调用max_element函数,给定其特定的比较方式,将会获得在给定比较方式下得结果.上述代码中,给定的比较方式是根据value值进行比较,相当于重构了<号.将返回最大值.

使用匿名函数重构:

int main(){
	map<int, int> test;
	//初始化
	test.emplace(10, 5);
	test.emplace(3, 17);
	test.emplace(19, 20);
	test.emplace(20, 15);
	//输出按序排列的key值
	for (auto it : test)
		cout << it.first << " ";
	cout << endl;
	//i是迭代器  返回值为19-20【使用匿名函数】
	auto i= max_element(map.begin(),map.end(),[](pair<char, int> left, pair<char,int> right) { return left.second < right.second; }); 
	cout << i->first << "," << i->second << endl;
}

打印结果:

3 10 19 20 
19,20

C++获取map中value最大最小值对应的键值对_普通网友的博客-CSDN博客_c++ map求最大值

C++ 匿名函数_mayue_csdn的博客-CSDN博客_c++ 匿名函数 文章来源地址https://www.toymoban.com/news/detail-573552.html

到了这里,关于C++-map:获取map中value最大值、最小值对应的键值对的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何使用Python的pandas库获取DataFrame数据的最小值、最大值以及自定义分位数?

    Pandas是一个非常流行的Python数据处理库,它提供了大量的方法和工具来处理和分析数据。在本文中,我将向您展示如何使用Pandas获取dataframe格式数据的最小值、最大值和自定义分位数。 1、 获取最小值和最大值 获取dataframe的最小值和最大值非常简单。可以使用Pandas的min()和

    2024年02月02日
    浏览(79)
  • MATLAB-最大值与最小值

    在MATLAB中,用于计算最大值的函数是max函数,用于计算最小值的函数是min函数,其调用格式如下。 B=max(A) %计算最大值 ,若A为向量,则计算并返回向量中的最大值;若A为矩阵,则计算并返回 %一个含有各列最大值的行向量 B=min(A) %计算最小值 若A为向量,则计算并返回向量中的最

    2024年02月07日
    浏览(42)
  • OpenCV minMaxLoc()函数找出图像中最小值最大值

    OpenCV 找出图像中最小值最大值函数minMaxLoc的使用 功能:从一个矩阵中找出全局的最大值和最小值。 函数cv::minMaxLoc找出最大和最小元素的值和他们的位置。极值是遍历整个矩阵找到,或者当掩码不是一个空矩阵时,是通过遍历指定矩阵区域找到。 函数不适用于多通道矩阵,

    2024年02月08日
    浏览(50)
  • Java8中Stream流求最大值最小值

    1. stream().reduce()实现 2. stream().max()或stream().min()实现 1. stream().reduce()实现 2. Collectors.summarizingInt()实现 3. stream().max()或stream().min()实现 1. stream().reduce()实现 2. Collectors.summarizingLong()实现 3. stream().max()或stream().min()实现 1. stream().reduce()实现 2. Collectors.summarizingLong()实现 3. stream().max(

    2024年01月17日
    浏览(37)
  • ArcGIS中查看栅格影像最大值最小值的位置

    如果只是想大概获取栅格影像中最大值最小值的位置进行查看,可以不用编写程序获取具体的行列信息,只需要利用分类工具即可。 假设有一幅灰度影像数据,如下图所示。 想要查看最大值2116的大概位置在哪里,可以右击选择图层属性,首先选择符号系统,唯一值计算栅格

    2024年02月21日
    浏览(58)
  • 数据结构:求一维数组中的最大值最小值

    思路: 对于一维数组中的元素,赋max,min的初值为数组的第一个元素,然后将数组中剩余的元素依次和max值最小值比较。 代码: 分析:该算法的最好、最坏和平均情况下的元素比较次数分别为n-1,2(n-1),3(n-1)/2 该算法的时间最主要花费在元素的比较上。最好情况是a中元素呈

    2024年02月07日
    浏览(48)
  • 数据结构 | 寻找二维数组的最大值和对应下标 | C语言代码

    题目:         本题目要求读入M(最大为10)行N(最大为15)列个元素,找出其中最大的元素,并输出其行列值。 输入格式:         输入在第一行中给出行数m和列数n。接下来输入m*n个整数。 输出格式:         输出最大值的行号,列号,值。 输入样例: 2 3 1 2 3 4 5 6 输

    2024年02月05日
    浏览(52)
  • sql server 求多个字段中的最小值和最大值

    程序代码园发文地址: sql server 求多个字段中的最小值和最大值-程序代码园 小说,Java,HTML,Java小工具,程序代码园,http://www.byqws.com/ ,sql server 求多个字段中的最小值和最大值 http://www.byqws.com/blog/2143.html      今天在工作中,遇到一个需求,需要把最近6个月的出库数据,去掉一个

    2024年01月20日
    浏览(52)
  • Python如何求出矩阵中的最大值最小值以及所在的位置

    想着记录下来吧,代码小白,一点一点来。 题目简述:有个50x53的矩阵G,第53列是每一行的总和,目的是求出第53列的最小值,并输出最小值所在行的所有元素。 因为要根据第52列来找出最小值,调用min()函数便能求出最小值; min = G[:,52].min() 结果为13561.0,发现对应的是矩

    2024年02月12日
    浏览(44)
  • 使用SQL 统计表最大值,最小值,平均值,中位数值

    问:有一个postgres数据表,表中有update_time, create_time关于时间戳的字段,选择某个时间段,计算出update_time减去create_time的值做为耗时时间的字段duration_time,统计出在这段时间内耗时时间的平均值,中位数值,最大值,和最小值,请问如何通过sql语句实现此统计? 答:您好!

    2024年02月14日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包