C++ 标准库algorithm 常用算法
使用前的建议:自己能熟练快速手撸以下常见算法的情况下,再熟悉使用标准库更好
最值查找: max_element & min_element
- max_element 官方手册
- min_element 官方手册
用法: - 可以查找容器vector元素的最大 or 最小值,并返回容器的迭代器
注意下面例子: 用于查找重复的最值数中 位于数组最左端or最右端的位置 - 注意:算法接受的容器的迭代器范围 [a.begin(), a.end()),左闭右开区间,大多数算法都是需要提供左闭右开区间,如果你需要在闭区间执行算法,记得将右界移动一个单位 [l, r] - > [l, ++r)
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main(){
vector<int> a = {
2,1,6,2,8,8,5,1,7};
// 返回数组 最大最小值 且序列号较小的元素和下标
cout << "maxinum element is: " << *max_element(a.begin(), a.end()) << endl;
cout << "pos of maxinum element is: " << max_element(a.begin(), a.end()) - a.begin() << endl;
// 返回数组 最大最小 且序列号较大的元素及下标
cout << "mininum element is: " << *min_element(a.begin(), a.end()) << endl;
cout << "pos of mininum element is: " << min_element(a.