Inhaltsverzeichnis

nth_element()

#include <algorithm>

void nth_element (Ran first, Ran nth, Ran last) 
void nth_element (Ran first, Ran nth, Ran last, Binary comp) 
void nth_element (Exec pol, Ran first, Ran nth, Ran last) 
void nth_element (Exec pol, Ran first, Ran nth, Ran last, Binary comp) 
 
Ran ranges::nth_element (Range r, Ran nth, Binary comp = {}, Projproj = {}) 
Ran ranges::nth_element (Ran first, Ran nth, Ran last, Binary comp = {}, Projproj = {}) 

Sortiert den Bereich [first,last) soweit, dass das nte Element an der richtigen Position steht und sich links davon nur kleinere, rechts davon nur größere Elementwerte befinden.

Parameter

first Anfang des Bereiches
nth Position des nten Elementes
last Ende des Bereiches
comp Vergleichskriterium (Vorgabe = less)
proj einstelliger Funktor (Vorgabe = std::identity)
pol parallele Ausführungsart

Ergebnis

Rückgabewert: keiner.

Siehe auch

partial_sort(), partition().

Beispiel

nth_element.cpp
#include <algorithm>
#include <iostream>
#include <string>
 
int main()
{
  std::string s = "ein Beispiel";
 
  std::cout << s << '\n'
            << "   ^  wird" << '\n';
 
  std::nth_element(begin(s), begin(s)+3, end(s));
 
  std::cout << s << '\n';
}