c++ 之STL算法总览


表格中将所有的 STL 算法的名称、用途、文件分布等等,依算法名称的字母顺序列表。

表格中凡是不在 STL 标准规格之列的 SGI 专属算法,都以 * 加以表示。



算法名称算法用途质变所在文件
accumulate元素累计<stl_numeric.h>
adjacent_difference相邻元素的差额是 if in-place<stl_numeric.h>
adjacent_find查找相邻而重复的元素(或者符合某条件)<stl_algo.h>
binary_search二分查找<stl_algo.h>
copy复制是 if in-place<stl_algobase.h>
copy_backward逆向复制是 if in-place<stl_algobase.h>
copy_n *复制 n 个元素是 if in-place<stl_algobase.h>
count计数<stl_algo.h>
count_if在特定条件下计数<stl_algo.h>
equal判断两个区间是否相等<stl_algobase.h>
equal_range在有序区间查找某值<stl_algo.h>
fill改填元素值<stl_algobase.h>
fill_n改填元素值 n 次<stl_algobase.h>
find循环查找<stl_algo.h>
find_if循环查找符合特定条件者<stl_algo.h>
find_end查找子序列最后一次出现位置<stl_algo.h>
find_first_of查找子序列元素首次出现位置<stl_algo.h>
foreach对区间每个元素施行某操作<stl_algo.h>
generate以特定操作结果填充区间元素<stl_algo.h>
generate_n以特定操作结果填充区间 n 个元素<stl_algo.h>
includes是否涵盖于某序列之中<stl_algo.h>
inner_product内积<stl_numeric.h>
inplace_merge合并并就地替换<stl_algo.h>
iota *在区间填入指定的递增序列<stl_numeric.h>
is_heap *判断区间是否为一个 heap<stl_algo.h>
is_sorted *判断区间是否已排序<stl_algo.h>
iter_swap元素互换<stl_algobase.h>
lexicographical_compare以字典顺序进行比较<stl_numeric.h>
lower_bound插入指定元素而不影响排序的最低位置<stl_algo.h>
max最大值<stl_algobase.h>
max_element最大值所在位置<stl_algo.h>
merge合并两个序列是 if in-place<stl_algo.h>
min最小值<stl_algobase.h>
min_element最小值所在位置<stl_algo.h>
mismatch找出不匹配点<stl_algobase.h>
next_premutation获得下一个排列组合<stl_algo.h>
nth_element重新排列序列第 n 个元素的左右两端<stl_algo.h>
partial_sort局部排序<stl_algo.h>
partial_sort_copy局部排序并复制到他处是 if in-place<stl_algo.h>
partial_sum局部求和是 if in-place<stl_numeric.h>
partition分割<stl_algo.h>
prev_permutation获得前一个排列组合<stl_algo.h>
power *幂次方,表达式可指定<stl_numeric.h>
random_shuffle随机重排元素<stl_algo.h>
random_sample *随机取样是 if in-place<stl_algo.h>
random_sample_n *随机取样是 if in-place<stl_algo.h>
remove删除某类元素<stl_algo.h>
remove_copy删除某类元素并将结果复制到别处<stl_algo.h>
remove_if有条件地删除某类元素<stl_algo.h>
remove_copy_if有条件地删除某类元素并将结果复制到别处<stl_algo.h>
replace替换某类元素<stl_algo.h>
replace_copy替换某类元素并将结果复制到别处<stl_algo.h>
replace_if有条件地替换<stl_algo.h>
replace_copy_if有条件地替换并将结果复制到别处<stl_algo.h>
reverse反转元素次序<stl_algo.h>
reverse_copy反转元素次序并将结果复制到别处<stl_algo.h>
rotate旋转<stl_algo.h>
rotate_copy旋转并将结果复制到别处<stl_algo.h>
search查找某个子序列<stl_algo.h>
search_n查找连续发生 n 次的子序列<stl_algo.h>
set_difference差集是 if in-place<stl_algo.h>
set_intersection交集是 if in-place<stl_algo.h>
set_symmetric_difference对称差集是 if in-place<stl_algo.h>
set_union并集是 if in-place<stl_algo.h>
sort排序<stl_algo.h>
stable_partition分割并保持元素相对次序<stl_algo.h>
stable_sort排序并保持等值元素相对次序<stl_algo.h>
swap交换元素<stl_algobase.h>
swap_ranges交换指定区间<stl_algo.h>
transform以两个序列为基础交互产生第三个序列<stl_algo.h>
unique将重复元素折叠使之唯一<stl_algo.h>
unique_copy将重复元素折叠使之唯一并复制到别处是 if in-place<stl_algo.h>
upper_bound插入指定元素而不影响排序的最高位置<stl_algo.h>
make_heap制造一个 heap<stl_heap.h>
pop_heap从 heap 取出一个元素<stl_heap.h>
push_heap将一个元素推进 heap 内<stl_heap.h>
sort_heap对 heap 排序<stl_heap.h>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值