nth_element es una función que le permite encontrar el elemento nth en una matriz en orden ordenado en tiempo lineal.
La función toma el extremo izquierdo de la matriz, un iterador a la posición cuyo valor en orden ordenado se encuentra y el extremo derecho de la matriz.
Después de aplicar la función, el valor requerido se ubicará en el lugar indicado por el iterador, mientras que los valores restantes adquirirán un orden caótico, pero a la izquierda del n no habrá valores más que él, y a la derecha nada menos. Es decir, debe entenderse que esta función destruye el orden original de los elementos.
Puede leer más en la documentación (https://www.cplusplus.com/reference/algorithm/nth_element/).
Ejemplo:
vector a = { 4, 0, 3, 9, 2, 1, 8, 5, 6, 7 };
// busca el elemento en el índice 4
// presta atención al orden de los argumentos
nth_element(a.begin(), a.begin() + 4, a.end());
// un = [#, #, #, #, 4, $, $, $, $, $]
// donde # <= 4 y 4 <= $