Standard C++ Library Class Reference

Description
The min_element algorithm returns an iterator that denotes the minimum element in a
sequence. If the sequence contains more than one copy of the minimum element, the iterator
points to the first occurrence of the element. In the second version of the function, the optional
argument comp defines a comparison function that can be used in place of the default
operator<. This function can be used with all the datatypes provided by the standard library.
Algorithm min_element returns the first iterator i in the range [first, last) such that for any
iterator j in the range same range, the following corresponding conditions hold:
!(*j < *i)
or
comp(*j, *i) == false.
Complexity
min_element performs exactly max((last - first) - 1, 0) applications of the corresponding
comparisons.
Example
//
// max_elem.cpp
//
#include <algorithm>
#include <vector>
#include <iostream.h>
int main(void)
{
typedef vector<int>::iterator iterator;
int d1[5] = {1,3,5,32,64};
// set up vector
vector<int> v1(d1,d1 + 5);
// find the largest element in the vector
iterator it1 = max_element(v1.begin(), v1.end());
// it1 = v1.begin() + 4
// find the largest element in the range from
// the beginning of the vector to the 2nd to last
iterator it2 = max_element(v1.begin(), v1.end()-1,
less<int>());
// it2 = v1.begin() + 3