STL 中的所有算法(70 个)
参考自:
http://www.cppblog.com/mzty/archive/2007/03/14/19819.html
http://hi.baidu.com/dinglinbin/blog/item/887e7c30c12e429ba9018e30.html
!
!!! STL 算法部分主要由头文件<algorithm>,<numeric>,<functional>组成。要使用
STL 中的算法函数必须包含头文件<algorithm>,对于数值算法须包含
<numeric>,<functional>中则定义了一些模板类,用来声明函数对象。
!!! STL 中算法大致分为四类:
!!!!!!! 1、非可变序列算法:指不直接修改其所操作的容器内容的算法。
!!!!!!! 2、可变序列算法:指可以修改它们所操作的容器内容的算法。
!!!!!!! 3、排序算法:包括对序列进行排序和合并的算法、搜索算法以及有序序列上的集合
操作。
!!!!!!! 4、数值算法:对容器内容进行数值计算。
!!! 以下对所有算法进行细致分类并标明功能:
!!! <一>查找算法(13 个):判断容器中是否包含某个值
!!! adjacent_-nd:!!!!!!!!!!! 在 iterator 对标识元素范围内,查找一对相邻重复元素,找到
则返回指向这对元素的第一个元素的 ForwardIterator。否则返回 last。重载版本使用输
入的二元操作符代替相等的判断。
!!! binary_search:!!!!!!!!!!! 在有序序列中查找 value,找到返回 true。重载的版本实用
指定的比较函数对象或函数指针来判断相等。
!!! count:!!!!!!!!!!!!!!!!!!! 利用等于操作符,把标志范围内的元素与输入值比较,返回相等
元素个数。
!!! count_if:!!!!!!!!!!!!!!!! 利用输入的操作符,对标志范围内的元素进行操作,返回结果为
true 的个数。
!!! equal_range:!!!!!!!!!!!!! 功能类似 equal,返回一对 iterator,第一个表示