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 :: 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)//. 合并有序序列