
STL笔记
文章平均质量分 85
以最简单的方式记录STL的使用和一些细节.
小大小丑
小丑
展开
-
STL算法---数学计算算法
数学计算算法1. accumulateiterator对标识的序列段元素之和,加到一个由val指定的初始值上。重载版本不再做加法,而是传进来的二元操作符被应用到元素上函数原形template T accumulate(InIt first, InIt last, T val);template T accumulate(InIt first, InIt last, T val,原创 2014-08-30 10:41:37 · 1380 阅读 · 0 评论 -
STL算法---生成和变异算法(遍历元素, 对元素做一些事情)
(遍历元素, 对元素做一些事情)1. fill / fill_nfill将[first, last)中的元素赋值为x函数原形template void fill(FwdIt first, FwdIt last, const T& x);fill_n将输入值赋给first到first+n范围内的所有元素函数原形template void fill_n(原创 2014-08-30 10:29:53 · 1167 阅读 · 0 评论 -
STL算法---拷贝/删除/替换算法
1. copy / copy_backward(复制序列)1.1 copy 复制序列函数原形template OutIt copy(InIt first, InIt last, OutIt x);1.2 copy_backward与copy相同,不过元素是从后面开始顺序拷贝填充函数原形template BidIt2 copy_backward(BidIt原创 2014-08-29 16:40:52 · 877 阅读 · 0 评论 -
STL算法---排序算法(二)
4. random_shuffle(随机调整次序)对指定范围内的元素随机调整次序。重载版本输入一个随机数产生操作函数原形template void random_shuffle(RanIt first, RanIt last);template void random_shuffle(RanIt first, RanIt last, Fun& f);////////////原创 2014-08-29 09:58:22 · 937 阅读 · 0 评论 -
STL算法---排序算法(一)
1. nth_element将范围内的序列重新排序, 使所有小于等于第n个元素的元素都出现在它前面,而大于它的都出现在后面。重载版本使用自定义的比较操作函数原形template void nth_element(RanIt first, RanIt nth, RanIt last);template void nth_element(RanIt first, RanIt nth原创 2014-08-28 21:08:01 · 817 阅读 · 0 评论 -
STL算法---集合算法
集合算法set_union / set_intersection / set_difference / set_symmetric_difference1. set_union构造一个有序序列,包含两个序列中所有的不重复元素。相当于[first1, last1)和[first2, last2)的并集.重载版本使用自定义的比较操作函数原形template原创 2014-08-28 17:36:48 · 803 阅读 · 0 评论 -
STL算法---关系算法(大于/小于/相等/包含)
1. equal[first, last)与[x, x + last - first)每个对应位置的元素相等, 返回true.(默认使用等于操作符) 重载版本使用输入的操作符代替默认的等于操作符函数原形template bool equal(InIt1 first, InIt1 last, InIt2 x);template bool equal(InIt1 first原创 2014-08-28 11:34:09 · 1496 阅读 · 0 评论 -
STL算法---堆算法
堆算法有4个函数(make_heap, push_heap, pop_heap, sort_heap)1. make_heap把指定范围内的元素生成一个堆。重载版本使用自定义比较操作函数原形template void make_heap(RanIt first, RanIt last);template void make_heap(RanIt first, R原创 2014-08-27 16:13:22 · 937 阅读 · 0 评论 -
STL算法---查找算法(四)
9. lower_bound和upper_boundlower_bound返回一个非递减序列[first, last)中第一个大于等于值val的位置。upper_bound返回一个非递减序列[first, last)中第一个大于val的位置。重载函数使用自定义比较操作lower_bound函数原形template FwdIt lower_bound(FwdI原创 2014-08-27 14:47:33 · 811 阅读 · 0 评论 -
STL算法---查找算法(三)
6. find 和find_if元素查找使用元素的等于操作符, 对范围[first, last)内的元素与输入值val进行比较. 当匹配时,结束搜索, 返回该元素的一个InputIterator函数原形template InIt find(InIt first, InIt last, const T& val);// 使用输入的函数代替等于操作符执行findtempla原创 2014-08-27 09:57:10 · 881 阅读 · 0 评论 -
STL算法---查找算法(二)
3. count(统计)利用等于操作符,把在[_First, _Last)范围内的元素与输入值_Val比较,返回相等元素个数size_t count(_InIt _First, _InIt _Last, const _Ty& _Val);//////////////////////////////////////////#include "stdafx.h"#inclu原创 2014-08-27 08:53:51 · 946 阅读 · 0 评论 -
STL算法---查找算法(一)
一. 查找算法1. adjacent_find (相邻查找)adjacent_find(_First, _Last);在范围[_First, _Last)查找第一对相邻相等的元素, 并返回这对元素的前面的iterator.adjacent_find(_First, _Last, _Pred);在范围[_First, _Last)查找第一对相邻的元素, 这对元素满足_Pr原创 2014-08-22 16:53:07 · 1203 阅读 · 0 评论 -
STL算法目录
STL算法---查找算法1. adjacent_find (相邻查找)在范围[_First, _Last)查找第一对相邻相等的元素, 并返回这对元素的前面的iterator2. binary_search (二分查找)在有序序列中查找value,找到返回true。3. count(统计)4. count_if(统计)在[_First, _Last)范围内原创 2014-08-30 11:40:30 · 953 阅读 · 0 评论