nth_element()
nth_element() reorders the sequence so that all elements less than the nth element occur before it and all elements that are greater occur after it. For example, given
int ia[] = { 29,23,20,22,17,15,26,51,19,12,35,40 };
an invocation of nth_element() marking ia+6 as nth (it has a value of 26)
nth_element( ia, ia+6, &ia[12] );
yields a sequence in which the seven elements less than 26 are to its left, and the four elements greater than 26 are to its right:
{ 23,20,22,17,15,19,12,26,51,35,40,29 }
The elements on either side of the nth element are not guaranteed to be in any particular order. An optional fourth parameter allows us to indicate a comparison other than the default less-than operator.
Get Essential C++ now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.