1.min_element(b, e)
2.min_element(b, e, op)
3.max_element(b, e)
4.max_element(b, e, op)
#include <iostream>
#include <algorithm>
#include <deque>
using namespace std;
bool absLess( int elem1, int elem2 )
{
return abs(elem1)<abs(elem2);
// return abs(elem1)<abs(elem2)?true:false;
}
int main()
{
deque<int> ideq;
for( int i=0; i<9; i++ )
{
ideq.insert(ideq.end(), i);
}
for( int i=-3; i<6; i++ )
{
ideq.insert(ideq.end(), i);
}
for( deque<int>::iterator itr = ideq.begin(); itr!=ideq.end(); ++itr)
{
cout<<*itr<<' ';
}
cout<<endl;
//返回的是迭代器
deque<int>::iterator result = min_element(ideq.begin(), ideq.end());
cout<<"min: "<<*result<<endl;
cout<<"max: "<<*max_element(ideq.begin(), ideq.end())<<endl;
cout<<"abs min: "<<*min_element(ideq.begin(), ideq.end(), absLess)<<endl;
cout<<"abs max: "<<*max_element(ideq.begin(), ideq.end(), absLess)<<endl;
return 0;
}