
Algorithm
Finds and returns the minimum of a pair of values.
None
#include <algorithm> template <class T> const T& min(const T&, const T&); template <class T, class Compare> const T& min(const T& a, const T&, Compare);
The min algorithm determines and returns the minimum of a pair of values. In the second version of the algorithm, the optional argument Compare defines a comparison function that can be used in place of the default operator<.
min returns the first argument when the two arguments are equal.
//
// max.cpp
//
#include <algorithm>
#include <iostream>
using namespace std;
int main(void)
{
double d1 = 10.0, d2 = 20.0;
// Find minimum
double val1 = min(d1, d2);
// val1 = 10.0
// the greater comparator returns the greater of the
// two values.
double val2 = min(d1, d2, greater<double>());
// val2 = 20.0;
// Find maximum
double val3 = max(d1, d2);
// val3 = 20.0;
// the less comparator returns the smaller of the
// two values.
// Note that, like every comparison in the STL, max is
// defined in terms of the < operator, so using less here
// is the same as using the max algorithm with a default
// comparator.
double val4 = max(d1, d2, less<double>());
// val4 = 20
cout << val1 << " " << val2 << " "
<< val3 << " " << val4 << endl;
return 0;
}
Program Output
10 20 20 20