新闻中心
C++如何获取数组的最大值和最小值_C++ min_element与max_element算法
使用min_element和max_element可获取数组最值,需包含algorithm头文件,解引用迭代器得值,支持自定义比较规则,但空容器会导致未定义行为。

在C++中,获取数组的最大值和最小值可以通过标准库中的 min_element 和 max_element 算法轻松实现。这两个函数定义在 algorithm 头文件中,适用于数组、vector 等容器。
使用 min_element 与 max_element
std::min_element 返回指向范围中最小元素的迭代器,std::max_element 返回指向最大元素的迭代器。需要解引用才能获取实际值。
基本用法示例:
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int arr[] = {3, 7, 2, 9, 1, 5};
int n = sizeof(arr) / sizeof(arr[0]);
// 获取最小值和最大值
int min_val = *min_element(arr, arr + n);
int max_val = *max_element(arr, arr + n);
cout << "最小值: " << min_val << endl;
cout << "最大值: " << max_val << endl;
return 0;
}
作用于 vector 或其他容器
对于 std::vector,可以结合 begin() 和 end() 使用:
美图云修
商业级AI影像处理工具
50
查看详情
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;
int main() {
vector<int> vec = {10, -2, 8, 15, 0};
int min_val = *min_element(vec.begin(), vec.end());
int max_val = *max_element(vec.begin(), vec.end());
cout << "最小值: " << min_val << endl;
cout << "最大值: " << max_val << endl;
return 0;
}
自定义比较规则
如果需要按特定规则比较,比如找绝对值最大或最小的元素,可以传入自定义比较函数或 lambda 表达式:
// 找绝对值最小的元素
int abs_min = *min_element(arr, arr + n, [](int a, int b) {
return abs(a) < abs(b);
});
注意:若数组为空,调用 *min_element 或 *max_element 会导致未定义行为,使用前应确保容器非空。
基本上就这些。掌握 min_element 和 max_element 能让代码更简洁高效。
以上就是C++如何获取数组的最大值和最小值_C++ min_element与max_element算法的详细内容,更多请关注其它相关文章!
# c++
# 抖音营销推广家乡
# 这两个
# 相关文章
# 适用于
# 头文件
# 命令行
# 迭代
# 自定义
# 递归
# 最小值
# 标准库
# stream
# ios
# ai
# go
# 数组
# 美图
# 大同网站推广官网招聘
# 重庆忠县网站建设模板
# 营销推广 天涯
# 海南外贸网站推广
# 建设网站证书
# 线路产品营销推广方案ppt软件
# 问答网站建设总结范文
# 石家庄正定网站建设推广
# 宁夏电商网站建设推广
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
TypeScript/J*aScript:高效查找数组中首个唯一ID对象
mysql备份恢复性能优化_mysql备份恢复性能优化方法
韩剧圈正版入口页面_韩剧圈官网登录链接
Golang如何优化CPU绑定任务分配策略_Golang CPU任务分配优化实践
虚幻5科幻题材ARPG大作遭取消!本是《奇异人生》厂商新作
高德地图家和公司地址在哪设置 高德地图通勤路线设置方法【超详细】
中兴Axon42Ultra怎样在文件App筛图_iPhone中兴Axon42Ultra文件App筛图【图片筛选】
铁路12306改签能改到更早的车次吗_铁路12306改签提前车次规则
如何优雅地解决Livewire文件上传难题?SpatieLivewireFilepond让一切变得简单
J*a里如何使用N*igableMap进行导航操作_可导航Map操作技巧解析
c++如何实现一个简单的ECS框架_c++数据驱动设计与游戏开发
马斯克:Optimus 人形机器人复数形式为 Optimi
Tailwind CSS line-clamp 布局问题解析与修复指南
PHP中SSG-WSG API的AES加密实践:正确使用初始化向量
Win10双系统截图高效法 截屏快捷键速记【技巧】
优化MinIO list_objects_v2 操作的性能瓶颈与最佳实践
在Qt QML中通过Python字典动态更新TextEdit内容的教程
jQuery Mask 插件中实现电话号码固定前导零的教程
PHP中高效并行检查多链接状态的教程
PPT平滑切换怎么做 PPT炫酷“平滑”切换动画制作教程【必学】
Win11怎么关闭触摸屏_Windows 11禁用HID符合标准触摸屏
写好的html代码怎么运行出来_运行写好的html代码方法【教程】
Adobe PDF表单中利用J*aScript解析与格式化日期组件的教程
如何使用纯J*aScript判断Input元素是否在特定类容器内
J*a实现学校排课程序_面向对象结构化项目示例
vivo浏览器怎么扫描二维码 vivo浏览器内置扫一扫功能使用方法
Google翻译怎么语音输入_Google翻译语音输入功能使用与设置方法
从OpenAI API响应中高效提取生成文本
MongoDB Aggregation:在嵌套对象数组中精确匹配ObjectId
windows10怎么查看本机ip_windows10命令提示符ipconfig使用
动漫共和国防屏蔽稳定域名-动漫共和国官方正版直达通道
Composer如何处理Git子模块(submodule)依赖_Composer与Git Submodule的对比与选择
印象笔记如何设提醒任务防漏执行_印象笔记设提醒任务防漏执行【任务提醒】
HTML转PPT成品工具有哪些?HTML网页转PPT成品工具大全
凉拌黄瓜怎么拌更入味 凉拌黄瓜简单家常做法
Angular Material 垂直步进器:实现底部到顶部排序的教程
Spyder启动失败:字体文件权限拒绝错误解决方案
微信网页版官方入口直达 微信网页版网页版登录使用方法
蛙漫正版漫画平台入口_蛙漫免费阅读全站漫画资源
TikTok搜索结果不显示如何解决 TikTok搜索刷新优化方法
在J*a中如何使用Stream.map转换元素_Stream映射操作解析
J*aScript中正确使用querySelectorAll与复杂CSS选择器
今日头条怎么同步内容到抖音_今日头条内容同步到抖音教程
React列表渲染与独立状态管理:避免全局状态影响局部更新
AI抖音网页版免费视频入口 AI抖音网页端最新视频实时观看
Python中高效且防溢出的双曲正弦计算:基于对数空间的优化策略
将HTML动态表格多行数据保存到Google Sheet的教程
如何使 Jest 模拟函数默认抛出错误以提高测试效率
Node.js中HTML按钮与J*aScript函数交互的正确姿势
抖音网页版快捷访问 抖音网页版网页版入口操作教程


2025-11-25
浏览次数:次
返回列表
element可获取数组最值,需包含algorithm头文件,解引用迭代器得值,支持自定义比较规则,但空容器会导致未定义行为。