nth_element est une fonction qui vous permet de trouver le nième élément d'un tableau dans un ordre trié en temps linéaire.
La fonction prend l'extrémité gauche du tableau, un itérateur à la position dont la valeur dans l'ordre trié doit être trouvée, et l'extrémité droite du tableau.
Après avoir appliqué la fonction, la valeur requise sera située à l'endroit indiqué par l'itérateur, tandis que les valeurs restantes acquerront un ordre chaotique, mais à gauche du nième, il n'y aura pas plus de valeurs qu'elle, et à droite pas moins. Autrement dit, il faut comprendre que cette fonction détruit l'ordre d'origine des éléments.
Vous pouvez en savoir plus dans la documentation (https://www.cplusplus.com/reference/algorithm/nth_element/).
Exemple:
vecteur a = { 4, 0, 3, 9, 2, 1, 8, 5, 6, 7 } ;
// recherche l'élément à l'index 4
// attention à l'ordre des arguments
nth_element(a.begin(), a.begin() + 4, a.end());
// un = [#, #, #, #, 4, $, $, $, $, $]
// où # <= 4 et 4 <= $