一 非更易型算法
- C++ 算法 元素计数
- std::count 元素计数
- std::count_if 元素计数
- C++ 算法 元素最大值和最小值
- std::min_element 返回[first, last) 中指向第一个最小值的迭代器
- std::max_element 返回[first, last) 中指向第一个最大值的迭代器
- std::minmax_element(C++11) 返回 std::pair<第一个最小值的迭代器, 最后一个最大值的迭代器>
- C++ 算法 查找元素
- std::find 查找第一个匹配元素
- std::find_if 查找第一个匹配元素
- std::find_if_not(C++11) 查找第一个不匹配元素
- std::search_n 查找前n个连续匹配值
- std::search 查找第一个子区间
- std::find_end 查找最后一个子区间
- std::find_first_of 查找某些元素第一次出现位置
- std::adjacent_find 查找两个连续且相等的元素
- C++ 算法 区间的比较
- std::equal 检验相等性
- std::is_permutation(C++11) 测试不定序的相等性
- std::mismatch 查找第一处不同
- std::lexicographical_compare 字典次序比较
- C++11 算法 区间是否排序或局部排序
- std::is_sorted(C++11) 区间是否排序
- std::is_sorted_until(C++11) 返回区间第一个破坏排序的元素
- C++11 算法 区间是否被分割
- std::is_partitioned(C++11) 区间是否按谓词进行分割
- std::partition_point(C++11) 返回已分割区间的分割点
- C++11 算法 区间是否构成堆
- std::is_heap(C++11) 区间元素是否构成大堆
- std::is_heap_until(C++11) 查找能成为大堆的最大子范围
- C++11 算法 检查区间元素
- std::all_of(C++11) 检查一元谓词 p 是否对范围 [first, last) 中所有元素返回 true
- std::any_of(C++11) 检查一元谓词 p 是否对范围 [first, last) 中至少一个元素返回 true
- std:: none_of(C++11) 检查一元谓词 p 是否不对范围 [first, last) 中任何元素返回 true
二 github
- 所有Demo 已上传github cplusplus
三 参考
- 《C++ 标准库 第2版》
- cppreference