cb40a_c++_STL_算法_交换swap_ranges】的更多相关文章

cb40a_c++_STL_算法_交换swap_rangesswap_ranges(b,e,b2);如果两个容器的数据数量不一致时,只交换一部分数据,a里面3个,b里面5个,则只会交换3个,b里面还有两个不变 注意:下列两种方法也是交换算法1.容器的swap()成员函数2.赋值操作 /*cb40a_c++_STL_算法_交换swap_ranges swap_ranges(b,e,b2); 如果两个容器的数据数量不一致时,只交换一部分数据, a里面3个,b里面5个,则只会交换3个,b里面还有两个不…
cb50a_c++_STL_算法_局部排序partial_sort partial_sort(b,se,e)排序一部分,begin,source end,endcout << "部分排序,开头的5个数排序" << endl;partial_sort(ideq.begin(), ideq.begin() + 5, ideq.end()); 需要注意的是,不能保持未排序元素的原始顺序.在执行 partial_sort() 后后面元素的顺序是不确定的,这取决于具体的实…
cb48a_c++_STL_算法_重排和分区random_shuffle_stable_partition random_shuffle()//重排,随机重排,打乱顺序 partition()分区,把符合规则的分成两个区域,比如奇数放一边,偶数放一边.默认之间的位置会变化 stable_partition(),稳定的分区,分区后,默认之间的位置不会变化, 比如:2,3,5,6,分区后,2依然在6的前面.3依然在5的前面 STL算法--变序性算法 reverse() 逆转 reverse_copy…
cb46a_c++_STL_算法_逆转和旋转reverse_rotateSTL算法--变序性算法reverse() 逆转reverse_copy()一边复制一般逆转rotate()旋转,某个位置开始前后交换位置rotate(ivec2.begin(), ivec2.begin() + 2, ivec2.end());1,2,3,4,5,6,7,8,9,rotate后:3,4,5,6,7,8,9,1,2, rotate_copy()一边复制一般旋转 ...next_permutation()pre…
cb41a_c++_STL_算法_填充新值fill_generatefill(b,e,v)fill_n(b,n,v),填充n个vgenerate(b,e,p)generate_n(b,n,p) generate_n(back_inserter(ilist), 5, rand);//插入5个随机数,rand是个随机数函数 STL算法-修改性算法for_each()copy()copy_backward()transform()merge()swap_ranges()fill()fill_n() g…
cb37a-_c++_STL_算法_复制元素copy_copy_backward copy(),同一个容器内部区间的拷贝,或者容器与容器之间的拷贝copy_backward()//向后copy 注意:1.没有copy_if算法,可以使用remove_copy_if()算法2.复制过程中要逆转元素次序,使用reverse_copy()算法3.把容器内所有元素赋值给另一个容器,要使用赋值操作符或者容器的assign()成员函数4.复制工程中删除某些元素,使用remove_copy()和remove_…
cb51a_c++_STL_算法_根据第n个元素排序nth_elementnth_element(b,n,e),比如最大的5个数排序,或者最小的几个数nth_element(b,n,e,p)对比:partition()算法,分区算法 error C2675: 一元“++”:“TT88”不定义该运算符或到预定义运算符可接收类型的转换for (TT88::iterator iter = ideq.begin(); iter != ideq.end(); ++ideq),写错了,应该是++iter /…
cb49a_c++_STL_算法_对所有元素排序_sort_stable_sort sort(b,e) sort(b,e,p) stable_sort(b,e) stable_sort(b,e,p) 注意: 不适用于list容器,list有成员函数sort(); cb49a_c++_STL_算法_对所有元素排序_sort_stable_sort sort(b,e) sort(b,e,p) stable_sort(b,e) //stirng,按字符个数排序.能够保证位置间前面一致.比如 22 33…
cb47a_c++_STL_算法_排列组合next_prev_permutation 使用前必须先排序.必须是 1,2,3或者3,2,1.否者结果不准确.如果, 1,2,4,6.这样数据不会准确next_permutation()//原始数据是从小到大的, 1,2,3prev_permutation() //原始数据是从大到小的,比如 3 ,2 ,1,则可以使用这个算法. 3个数字就6种组合.1 2 31 3 22 1 32 3 13 1 2 3 2 1 返回值是ture,则还有下一个组合fal…
cb45a_c++_STL_算法_删除_(3)_unique(唯一的意思)删除连续性的重复的数据unique(b,e),删除连续性的,删除重复的数据,比如如果有两个连续的5,5,则留下一个.unique(b,e,p)unique_copy(b1,e1,b2)unique_copy(b1,e1,b2,p) copy(source, source + sourceNum,back_inserter(ilist));//ilist是空的,无数据,所以需要,back_inserter 删除性算法 注意:…