矢量中最大值和最小值的索引

Index's for largest and smallest values in Vector

本文关键字:最小值 索引 最大值      更新时间:2023-10-16

如果以下代码返回vector中最小值的索引:

std::min_element(prices.begin(), prices.end()) - prices.begin();

那么为什么这段代码没有返回vector中最大值的索引呢?

std::max_element(prices.begin(), prices.end()) - prices.begin();

编辑:示例向量。

vector<int> prices{30, 20, 18, 15, 50}

谢谢。

代码运行正常,如预期的那样。第一个元素的索引为0

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
    vector<int> prices{30, 20, 18, 15, 50};
    int min_index = std::min_element(prices.begin(), prices.end()) - prices.begin();
    int max_index = std::max_element(prices.begin(), prices.end()) - prices.begin();
    std::cout<<"Minimum position: "<<min_index+1<<endl;
    std::cout<<"Minimum position: "<<max_index+1<<endl;
}

输出:最小位置:4

最小位置:5