📜  C++ STL中的库

📅  最后修改于: 2021-05-30 04:07:32             🧑  作者: Mango

非修改序列操作

  1. std :: all_of :范围内所有元素的测试条件
  2. std :: any_of :测试范围内的任何元素是否满足条件
  3. std :: none_of :测试是否没有元素满足条件
  4. std :: for_each :将函数应用于范围
  5. std :: find :在范围内查找值
  6. std :: find_if :在范围内查找元素
  7. std :: find_if_not :查找范围内的元素(负条件)
  8. std :: find_end 查找范围中的最后一个子序列
  9. std :: find_first_of :从范围内的集合中查找元素
  10. std :: neighbor_find :查找范围内相等的相邻元素
  11. std :: count :计数范围内的值的出现
  12. std :: count_if 返回范围内满足条件的元素数
  13. std ::不匹配:返回两个范围不同的第一个位置
  14. std :: equal :测试两个范围内的元素是否相等
  15. std :: is_permutation 测试范围是否是另一个的排列
  16. std ::搜索: 子序列的搜索范围
  17. std :: search_n 元素的搜索范围

修改序列操作

  1. std :: copy:复制元素范围
  2. std :: copy_n 复制元素
  3. std :: copy_if:  复制范围的某些元素
  4. std :: copy_backward:  向后复制元素范围
  5. std :: move:元素的移动范围
  6. std :: move_backward:向后移动元素范围
  7. std :: swap :交换两个对象的值
  8. std :: swap_ranges :交换两个范围的值
  9. std :: iter_swap:交换两个迭代器指向的对象的值
  10. std :: transform:转换范围
  11. std :: replace:  替换范围内的值
  12. std :: replace_if:替换范围内的值
  13. std :: replace_copy:  复印范围替换值
  14. std :: replace_copy_if:复制范围替换值
  15. std :: fill:  用值填充范围
  16. std :: fill_n:  用值填充序列
  17. std :: generate:使用函数生成范围值
  18. std :: generate_n:使用函数生成序列值
  19. std :: remove:  从范围中删除值
  20. std :: remove_if:从范围中删除元素
  21. remove_copy:复制范围删除值
  22. remove_copy_if:复制范围删除值
  23. std :: unique:删除范围内的连续重复项
  24. std :: unique_copy:复制范围删除重复项
  25. std :: reverse:反向范围
  26. std :: reverse_copy:复制范围已反转
  27. std ::旋转:向左旋转范围内的元素
  28. std :: rotation_copy :复制范围向左旋转
  29. std :: random_shuffle :随机重新排列范围中的元素
  30. std :: shuffle :使用生成器随机重新排列范围内的元素

分区操作

  1. std :: is_partitioned:测试范围是否已分区
  2. std :: partition:分区范围为两个
  3. std :: stable_partition:  分为两个分区范围-稳定的顺序
  4. partition_copy:分区范围分为两个
  5. partition_point:获取分区点

排序

  1. std :: sort:对范围中的元素进行排序
  2. std :: stable_sort:对元素进行排序,以保留等效项的顺序
  3. std :: partial_sort:对范围内的元素进行部分排序
  4. std :: partial_sort_copy:  复制并部分排序范围
  5. std :: is_sorted:  检查范围是否已排序
  6. std :: is_sorted_until:查找范围内的第一个未排序元素
  7. std :: nth_element: 范围内的元素排序

二进制搜索(对分区范围/排序范围进行操作)

  1. std :: lower_bound:将迭代器返回到下限
  2. std :: upper_bound:将迭代器返回上限
  3. std :: equal_range:获取等值元素的子范围
  4. std :: binary_search:  测试值是否按排序顺序存在

合并(在排序范围内操作)

  1. std :: merge:合并排序范围
  2. std :: inplace_merge:合并连续排序的范围
  3. std :: include:测试排序范围是否包含另一个排序范围
  4. std :: set_union:两个已排序范围的并集
  5. std :: set_intersection:两个排序范围的交集
  6. std :: set_difference:两个排序范围的差
  7. std :: set_symmetric_difference:两个排序范围的对称差

堆操作

  1. std :: push_heap:将元素推入堆范围
  2. std :: pop_heap:  堆范围内的弹出元素
  3. std :: make_heap:  从范围内堆起
  4. std :: sort_heap:对堆元素进行排序
  5. std :: is_heap:测试范围是否是堆
  6. std :: is_heap_until:  查找不是按堆顺序的第一个元素
  7. std :: max: 返回最大
  8. std :: minmax: 返回最小和最大元素
  9. std :: min_element:返回范围内的最小元素
  10. std :: max_element:返回范围内的最大元素
  11. std :: minmax_element:返回范围内的最小和最大元素

其他作业

  1. std :: lexicographical_compare:词典小于
  2. std :: next_permutation:将范围转换为下一个排列
  3. std :: prev_permutation:将范围转换为先前的排列

C++的所有STL文章

要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”