std::sortable
From cppreference.com
C++
Iterator library
Iterator concepts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Iterator primitives | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Algorithm concepts and utilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Indirect callable concepts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Common algorithm requirements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Utilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Iterator adaptors | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
Defined in header <iterator>
|
||
template
<
class I, class Comp =
ranges::less, class Proj =
std::identity
>
concept sortable =
|
(since C++20) | |
The sortable
concept specifies the requirements for algorithms that permute a range into an ordered range according to Comp
.
Semantic requirements
std::sortable<I, Comp, Proj>
See also
(C++20)
|
sorts a range into ascending order (algorithm function object) |
(C++20)
|
sorts a range of elements while preserving order between equal elements (algorithm function object) |
(C++20)
|
sorts the first N elements of a range (algorithm function object) |
(C++20)
|
partially sorts the given range making sure that it is partitioned by the given element (algorithm function object) |
(C++20)
|
merges two ordered ranges in-place (algorithm function object) |
(C++20)
|
adds an element to a max heap (algorithm function object) |
(C++20)
|
removes the largest element from a max heap (algorithm function object) |
(C++20)
|
creates a max heap out of a range of elements (algorithm function object) |
(C++20)
|
turns a max heap into a range of elements sorted in ascending order (algorithm function object) |
(C++20)
|
generates the next greater lexicographic permutation of a range of elements (algorithm function object) |
(C++20)
|
generates the next smaller lexicographic permutation of a range of elements (algorithm function object) |