- ACM
algorithm
- 2024-7-21 11:28:31 @
<1>序列容器遍历操作 常用参数对照: frist : 起点,为一个迭代器 last : 终点,为一个迭代器
for_each
功能: 遍历序列容器,将区间[fist,last)之内每一个元素传入函数fn,在函数fn内对元素进行操作; find
功能: 返回一个迭代器,该迭代器返回等于val的范围内的第一个元素的迭代器。如果找不到这样的元素,则函数返回last迭代器。
find_if
功能: 将区间[fist,last)之内每一个元素传入一元判断式:当pred(elem) 返回true时返回第一个达成条件的元素迭代器;
示例:
int a[] = {1,4,6,2,5,3,7}; vector v(a,a+7); vector::iterator it = find_if(v.begin(),v.end(),fun);//*it = 6 1 2 3 equal
功能: 比较两个序列的逐个元素是否相等;
count
功能: 返回序列中等于给定值元素的个数;
swap
函数功能:交换a和b
replace 函数原型:
功能: 把序列中等于old_value元素替换为 new_value;
replace_if
功能: 将区间[fist,last)之内每一个元素传入一元判断式:当pred(elem) 返回true时的元素替换成new_value;
序列排序 sort
函数功能: 两个重载: 第一个对first到last 升序排序 第二个在第一个基础上传入一个传入一元判断式comp为a < b则升序,否则降序 示例:
排列函数 next_permutation
函数功能: 求的是序列当前排列的下一个排列,当当前序列不存在下一个排列时,函数返回false,否则返回true。 注意: next_permutation() 在使用前需要对欲排列数组按升序排序,否则只能找出该序列之后的全排列数。
1 comments
-
谢煜龙 LV 6 @ 2024-8-11 0:48:56
6
- 1