STL基本算法
基本算法:
equal: 判断两个区间是否相等
fill: 改填元素值
fill_n: 改填元素值,n次
iter_swap: 元素互换
lexigicographical_compare: 以字典顺序进行比较
max: 最大值
min: 最小值
mismatch: 找出不匹配点
swap: 交换元素
SET相关算法:
set_union: 并集
set_intersection: 交集
set_difference: 差集
set_symmetric_difference: 对称差集(s1-s2)U (s2-s1)
heap算法:
make_heap(): 建堆
pop_heap(): 出堆
push_heap(): 插入堆
sort_heap(): 堆排序
其他算法:
adjacent_find: 查找相邻而重复(或符合某条件)的元素
count: 计数
count_if: 在特定条件下计数
find: 循序查找
find_if: 循序查找符合特定条件者
find_end: 查找某个子序列的最后一次出现点
find_first_of: 查找某些元素的首次出现点
generate: 以特定操作的运算结果填充特定区间内的元素
generate_n: 以特定操作的运算结果填充n个元素内容
includes: 是否涵盖与某序列之中
max_element: 在大致所在位置
merge: 合并两个序列
min_element: 最小值所在位置
partition: 分割
remove: 删除某类元素(但不删除)
remove_copy: 删除某类元素并将结果复制到另一容器
remove_if: 有条件的删除某类元素
remove_copy_if 有条件的删除某类元素将结果复制到另一容器
replace: 替换某类元素
replace_copy: 替换某类元素并将结果复制到另一容器
replace_if: 有条件的替换某类元素
replace_copy_if: 有条件的替换某类元素并将结果复制到另一容器
reverse: 反转元素次序
reverse_copy: 反转元素次序并将结果复制到另一容器
rotate; 旋转
rotate_copy: 旋转,并将结果复制到另一容器
search: 查找某个子序列
search_n: 查找”连续发生n次”的子序列
swap_ranges: 交换指定区间
transform: 以两个序列为基础,交互作用差生第三个序列
unique: 将重复的元素折叠缩编,使成为唯一
unique_copy: 将重复的元素折叠缩编,使成为唯一,并复制到他处
lower_bound: “将指定元素插入区间内而不影响的原本排序”的最低位置(二分法查找的一个版本)
upper_bound: “将指定元素插入区间内而不影响的原本排序”的最高位置(二分法查找的一个版本)
binary_search: 二分查找
next_permutation: 获得下一个排列组合
prev_permutation: 获得上一个排列组合
random_shuffle: 随机重排元素
partial_sort: 局部排序(利用最大堆性质)
partial_sort_copy: 局部排序(利用最大堆性质)并复制到他处
equal_range: 试图在有序区间中寻找某值(返回一个上下限区间)
inplace_merge: 合并并就地替换(覆盖上去)
nth_element: 重新安排序列中的第n个元素的左右两端