C++ 标准库备忘

2021-11-07
1 min read

C++ 的权威参考文档是 cppreference 和 C++ 标准委员会出版的 《Standard for Programming Language C++》,正版的标准文档比较贵,不过草案可以从网上免费下载,例如包含 C++20 标准的 n4901 草案可以直接下载完整的 PDF 文档

Algs

二分查找

Bound

lower_boundupper_bound 使用二分算法获取满足要求的迭代器。以顺序数组为例

  1. lower_bound 返回的第一个不小于 value 的元素的下标 lower_it[arr_beg, lower_it) 表示所有小于 value 的元素。lower_bound(beg, end, val)
  2. upper_bound 返回第一个大于 value 的元素的下标 upper_it[upper_it, arr_end) 表示所有大于 value 的元素
  3. equal_range 返回一个区间 [lower_it, upper_it),区间内的元素等于 value

bool binary_search(beg, end, val) 利用二分法判断已序数组中是否包含待查找数据 value

统计

  1. 计数:count / count_if /
  2. 极值:min&max / min_max / min_element /