2022-team05-100
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
* vector的迭代器可以进行多步偏移,set,map都没有此功能, 只能自增或者自减
set<int> :: iterator it;
--it; //ok
*(it - 1) // no
#define all(a) (a).begin(), (a).end()
random_shuffle(all(a));
rotate(first, mid, last)// [mid,last)之间的元素挪到最前面
reverse(a.begin(), a.end())//反转vector 或者string
copy(first, last, target)//[first,last)复制到target迭代器开头
count(first, last, value)//[first,last)之间有多少个元素为value
prev_permutation(first, last)
next_permutation(first,last)
is_sorted(all(a)) //判断是否有序
nth_element(first, nth, last)//将小于第n个元素的元素分到左边,大于第n个元素的元素 分到右边,均摊复杂度线性
*min_element(all(a)), *max_element(all(a))
merge(first1, last1, first2, last2, result)//. 合并有序序列
- vector的迭代器可以进行多步偏移,set,map都没有此功能, 只能自增或者自减
set
--it; //ok
*(it - 1) // no
#define all(a) (a).begin(), (a).end()
random_shuffle(all(a));
rotate(first, mid, last)// [mid,last)之间的元素挪到最前面
reverse(a.begin(), a.end())//反转vector 或者string
copy(first, last, target)//[first,last)复制到target迭代器开头
count(first, last, value)//[first,last)之间有多少个元素为value
prev_permutation(first, last)
next_permutation(first,last)
is_sorted(all(a)) //判断是否有序
nth_element(first, nth, last)//将小于第n个元素的元素分到左边,大于第n个元素的元素 分到右边,均摊复杂度线性
*min_element(all(a)), *max_element(all(a))
merge(first1, last1, first2, last2, result)//. 合并有序序列