返回
count:在指定区间上统计指定值出现的次数。
count_if:条件统计
max:判断两个数值中的较大值
max_element:查找指定区间的最大元素
min:判断两个数值中的较小值
min_element:查找指定区间的最小元素
random_shuffle:用来将指定区间上的元素按随机顺序排列
声明:
#include <algorithm> template <class inputItr,class Type> iterator_traits<inputItr>::difference_type count(inputItr first,inputItr last,const Type& value); template <class inputItr,class unaryPredicate> iterator_traits<inputItr>::difference_type count_if(inputItr first,inputItr last,unaryPredicate op); template <class Type> const Type& max(const Type& aVal, const Type&bVal); template <class Type,class compare> const Type& max(const Type& aVal,const Type& bVal,compare comp); template <class forwardItr> forwardItr max_element(forwardItr first,forwardItr last); template <class forwardItr, class compare> forwardItr max_element(forwardItr first,forwardItr last, compare comp); template <class Type> const Type& min(const Type& aVal, const Type&bVal); template <class Type,class compare> const Type& min(const Type& aVal,const Type& bVal,compare comp); template <class forwardItr> forwardItr min_element(forwardItr first,forwardItr last); template <class forwardItr, class compare> forwardItr min_element(forwardItr first,forwardItr last, compare comp); template <class randomAccessItr> void random_shuffle(randomAccessItr first, randomAccessItr last); template <class randomAccessItr, class randomAccessGenerator> void random_shuffle(randomAccessItr first,randomAccessItr last,randomAccessGenerator rand);
#include <iostream> #include <list> #include <string> #include <numeric> #include <iterator> #include <vector> #include <functional> #include <algorithm> using namespace std; int main() { char cList[10] = {'Z','a','Z','B','Z','c','D','e','F','Z'}; vector<char> charList(cList,cList+10); ostream_iterator<char> screen(cout," "); cout << "charList:" << endl; copy(charList.begin(),charList.end(),screen); cout << endl; // count int noofzs = count(charList.begin(),charList.end(),'Z'); cout << "count of Z = " << noofzs << endl; // count_if int noofupper = count_if(charList.begin(),charList.end(),isupper); cout << "count of Upper = " << noofupper << endl; int list[10] = {12,34,56,21,34,78,34,55,12,25}; ostream_iterator<int> screenInt(cout, " "); cout << "list:" << endl; copy(list,list+10,screenInt); cout << endl; // max_element int * maxLoc = max_element(list,list+10); cout << "the Largest element is " << *maxLoc << endl; // min_element int * minLoc = min_element(list,list+10); cout << "the Smallest element is " << *minLoc << endl; // random_shuffle random_shuffle(list,list+10); cout << "List.random_shuffle" << endl; copy(list,list+10,screenInt); cout << endl; return 0; }
运行结果:
charList:
Z a Z B Z c D e F Z
count of Z = 4
count of Upper = 7
list:
12 34 56 21 34 78 34 55 12 25
the Largest element is 78
the Smallest element is 12
List.random_shuffle
12 34 25 56 12 78 55 21 34 34