algorithm
算法是作用于容器的。虽然每个容器类都定义了自己的一些基本操作,但标准算法则为容器提供了更多更复杂的操作。算法还允许你同时对两个不同类型的容器进行操作。
如果要使用STL算法,必须将头文件<algorithm>包含到程序中。STL定义了 大量的算法,所有的算法都是模板函数,这也意味着任何类型的容器都可以使用这些算法。
例:
在算法中有个sort函数,对于vector和list等容器,通过调用
sort(v.begin(), v.end())
就可以将该容器内的元素排序。
count 函数
功能:将返回从start到end 范围之内的序列中某个元素的数量。
n = count(v.begin(), v.end(), ‘p’);
remove_copy 函数
功能:从指定的范围内复制元素,并删除其中等于某个值的元素。
remove_copy(v1.begin(), v1.end(), v2.begin(), ‘i’);
replace_copy 函数
功能:从指定的范围内复制元素,并某个元素替换成另外一个元素。remove_copy(v1.begin(), v1.end(), v2.begin(), ‘s’, ‘x’);
reverse 函数
功能:反转一个序列的次序。
reverse(v.begin(), v.end());