1: 将[first,last)范围内的元素重新排列到下一个字典顺序上更大的排列 详见链接
template <class BidirectionalIterator>
bool next_permutation (BidirectionalIterator first,
BidirectionalIterator last);
template <class BidirectionalIterator, class Compare>
bool next_permutation (BidirectionalIterator first,
BidirectionalIterator last, Compare comp);
2:从[first,last)范围内的每个连续的等效元素组中除去除第一个元素外的所有元素。详见链接
template <class ForwardIterator>
ForwardIterator unique (ForwardIterator first, ForwardIterator last);
template <class ForwardIterator, class BinaryPredicate>
ForwardIterator unique (ForwardIterator first, ForwardIterator last,
BinaryPredicate pred);
3: 重新排列[first,last)范围内的元素,使pred返回true的所有元素都在其返回false的所有元素之前。 迭代器返回的点指向第二组的第一个元素。详见链接
template <class ForwardIterator, class UnaryPredicate>
ForwardIterator partition (ForwardIterator first,
ForwardIterator last, UnaryPredicate pred);
4: 重新排列[first,last)范围内的元素,以使pred返回true的所有元素都在其返回false的所有元素之前,并且与函数分区不同,保留了每个组内元素的相对顺序 详见链接
template <class BidirectionalIterator, class UnaryPredicate>
BidirectionalIterator stable_partition (BidirectionalIterator first,
BidirectionalIterator last,
UnaryPredicate pred);
5: 构造一个ostream_iterator对象 详见链接
ostream_iterator (ostream_type& s);
ostream_iterator (ostream_type& s, const char_type* delimiter);
ostream_iterator (const ostream_iterator& x);