STL
酷python
微信公众号: coolpython
展开
-
STL之partition和stable_partition
先看代码,再解释函数的作用 bool Fun(char c) { return c=='*'; } int main() { string str = "***b**a**c**d**"; string str1(str); string str2(str); std::partition(std::begin(str1), std::end(str1),原创 2015-03-17 16:25:03 · 4016 阅读 · 0 评论 -
STL之 next_permutation
next_permutation 函数可以用来处理全排列,例如给定一个三个int元素的数组 int arr[] ={4,1,2}; 求他们的所有排列方式 直接上代码 int arr[] ={4,1,2}; sort(arr,arr+3); while(next_permutation(arr,arr+3)) { for(int i=0;i<3;i++) { c原创 2015-03-18 22:01:33 · 555 阅读 · 0 评论 -
STL之 count 和 count_if
这两个方法都可用于统计容器中符合要求的元素的个数,直接上代码 bool IsGreaterEx(int x) { return x>3?true:false; } int main() { vector vecInt; vecInt.push_back(1); vecInt.push_back(2); vecInt.push_back(3); vecInt.pu原创 2013-09-10 08:02:54 · 950 阅读 · 0 评论 -
STL 之find & find_if
函数功能很简单,直接上代码: bool fun(int x) { return x>2?true:false; } int main() { vector vecInt; vecInt.push_back(0); vecInt.push_back(1); vecInt.push_back(2); vecInt.push_back(3); vecInt.push_b原创 2013-09-10 10:30:38 · 780 阅读 · 0 评论 -
STL之binary_search
binary_search 二分查找,被查找的元素区间必须是排序的,且元素需要定义operator 函数一共有三个参数,第一个参数是区间的起始位置,第二个参数是区间的结束位置,第三个参数是待查找的元素 示例代码: int arr[10] = {21,32,2,43,13,4,35,26,37,66}; sort(arr,arr+10); bool b = bi原创 2015-03-24 17:23:38 · 1467 阅读 · 0 评论 -
STL之adjacent_find
adjacent_find是一个不破坏操作数据的模板函数,由头文件提供,这个函数能做什么呢?直接上代码 bool isGreater(int x,int y) { return (x+y)>10?true:false; //两个数相加大于10 } int main() { vector vecInt; vecInt.push_back(3); v原创 2013-09-09 20:07:53 · 1005 阅读 · 0 评论 -
STL之copy
先看函数原型 template OutIt copy(InIt first, InIt last, OutIt x); 从first到last这段区间内的数据都要复制到x处 看一下具体代码 int main() { int src[]= {1, 2, 3, 4, 5, 6, 7}; vector srcVec(src+2,src+6); for(int i原创 2015-04-20 22:06:00 · 516 阅读 · 0 评论