C++-vector:vector最值【*max_element(v.begin(), v.end())】【下标:max_element(v.begin(),v.end()) - v.begin()】

这篇具有很好参考价值的文章主要介绍了C++-vector:vector最值【*max_element(v.begin(), v.end())】【下标:max_element(v.begin(),v.end()) - v.begin()】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

当我们有一个vector<int>型数组vec时,我们只需要获取它的最大值,而又不想打乱它的顺序

一、求数组的最大值或最小值

1、vector容器

例 vector<int> vec

  • 最大值:
    • int maxValue = *max_element(v.begin(),v.end()); 
  • 最小值:
    • int minValue = *min_element(v.begin(),v.end());

2、普通数组

例 a[]={1,2,3,4,5,6};

  • 最大值:
    • int maxValue = *max_element(a,a+6); 
  • 最小值:
    • int minValue = *min_element(a,a+6);

二、求数组最大值最小值对应的下标

1、vector容器

例 vector<int> vec

  • 最大值下标:
    • int maxPosition = max_element(v.begin(),v.end()) - v.begin(); 
  • 最小值下标:
    • int minPosition = min_element(v.begin(),v.end()) - v.begin();

2、普通数组

例 a[]={1,2,3,4,5,6};

  • 最大值下标:
    • int maxPosition = max_element(a,a+6) - a; 
  • 最小值下标:
    • int minPosition = min_element(a,a+6) - a;

注意:返回的是第一个最大(小)元素的位置。

#include <iostream>
#include <vector>
#include <algorithm>

int main(){
    std::vector<int> a = { 2,4,6,7,1,0,8,9,6,3,2 };
    auto maxPosition = std::max_element(a.begin(), a.end());          // 最小值min_element
    std::cout << *maxPosition << " at the position of " << maxPosition - a.begin() << std::endl;
    return 0;
}

输出: 

9 at the position of 7

 

vector获取最值元素的方法_一只没有姓名的萌新~的博客-CSDN博客_vector找最大元素

C++数组或vector求最大值最小值_SongEsther的博客-CSDN博客_c++ vector最大值 文章来源地址https://www.toymoban.com/news/detail-736481.html

到了这里,关于C++-vector:vector最值【*max_element(v.begin(), v.end())】【下标:max_element(v.begin(),v.end()) - v.begin()】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • std::list和std::vector删除指定下标的元素

    list和vector都可以使用erase函数移除指定下标的元素,注意输入的是迭代器,返回值为指向下一个元素的位置。: 如果下标是index,直接调用即可: 如果根据下标一次性删除多个元素,则会发生错误,因为删除一个元素后,元素个数会发生变化,因此下标就会出现错误,正确代

    2024年02月11日
    浏览(55)
  • c++最值查找

    目录 min和max函数 min_element和max_element 例 nth_element函数 例 例题 题目描述 输入描述 输出描述 解 只能传入两个值或一个列表 时间复杂度为O(1),数组O(n),n为元素个数 min_element(st,ed)返回地址[st,ed)中最小的那个值的地址(迭代器),传入参数为两个地址或迭代器。 max_element(st,ed

    2024年02月02日
    浏览(24)
  • 【华为OD机试模拟题】用 C++ 实现 - 矩阵最值(2023.Q1)

    华为OD机试 - 入栈出栈(C++) | 附带编码思路 【2023】 华为OD机试 - 箱子之形摆放(C++) | 附带编码思路 【2023】 华为OD机试 - 简易内存池 2(C++) | 附带编码思路 【2023】 华为OD机试 - 第 N 个排列(C++) | 附带编码思路 【2023】 华为OD机试 - 考古学家(C++) | 附带编码思路 【

    2024年02月14日
    浏览(39)
  • Element Ui 中表格设置max-height滚动条失效

    为了是表格动态自适应页面高度,所以给表格设置了max-height属性,但是纵向滚动条消失了 解决方案:设置表格属性 但是又出现了表格头部渲染问题: 解决方案: 之前看到有人说将el-table__header-wrapper的overflow属性设置为visible,但是会出现横向滚动时表头无法滚动的问题。后

    2024年02月12日
    浏览(42)
  • 【C++】iota函数 + sort函数实现基于一个数组的多数组对应下标绑定排序

    目录 一、iota函数 1. 函数解析 ​①  迭代器类型(补充) ② 头文件 ③  参数 2. 函数用途与实例 二、sort函数 1、 函数解读 2、实现倒序排列 2.1 greater 与 less 模板参数 2.2  lambda表达式 三、下标绑定排序(zip) --- 833.字符串中的查找与替换 ①  迭代器类型(补充) ForwardIterator :

    2024年02月12日
    浏览(53)
  • 【C++】运算符重载 ⑩ ( 下标 [] 运算符重载 | 函数原型 int& operator[](int i) | 完整代码示例 )

    在之前的博客 【C++】面向对象示例 - 数组类 ( 示例需求 | 创建封装类 | 数组类头文件 Array.h | 数组类实现 Array.cpp | 测试类 Test.cpp - 主函数入口 ) 中 , 实现了一个数组类 , 在一个类中 , 封装了一个 int 类型的指针 , 该指针指向堆内存的 内存空间 , 用于存放一个数组 ; 核心是 2

    2024年02月07日
    浏览(34)
  • max函数(C++)

     A. 对象为两个变量:max(变量,变量,/函数/)  B. 对象为多个变量: max(初始化列表,/函数/)  A. 头文件:“algorithm”  B. 函数的原理就是找出这些变量当中数值最大的一个并返回,类似于  C. 关键其实就是我们通常只能比较两个对象,对于多个对象而言可能需要叠加多个

    2024年02月15日
    浏览(31)
  • STL 关于vector的细节,vector模拟实现【C++】

    _start指向容器的头,_finish指向容器当中 有效数据 的下一个位置,_endofstorage指向整个容器的尾 先开辟一块与该容器大小相同的空间,然后将该容器当中的数据一个个拷贝过来即可,最后更新_finish和_endofstorage的值即可。 深拷贝版本一: 注意: 不能使用memcpy函数 , 如果vec

    2024年02月15日
    浏览(43)
  • 【C++ STL】vector类最全详解(什么是vector?vector类的常用接口有哪些?)

    目录 一、前言 二、什么是vector ? 💦 vector的基本概念 💦vector的作用是什么 💦总结 三、 vector的(一维)定义 四、vector(一维)常用接口的使用  💦vector的常见构造(初始化)  💦vector的遍历及迭代器的操作 ① operator[ ]  ② at ( )  ③迭代器  ③ 范围for   💦vector的常见容量操

    2024年02月03日
    浏览(40)
  • 【C++】vector 模拟笔记

      下面有 vector 存储示意图: vector 是一个左闭又开的空间, _finish 不能存储有效数据。 vector 的 iterator 是 T 类型的指针,不要认为 iterator 就是指针,而且后面还有 list,map,set 等各种容器的迭代器,它们都不是原生指针。在这里我们 vector 写成模板,同时不能与库里面的空

    2024年02月16日
    浏览(55)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包