|Próximo mayor elementoMedio
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 10:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Próximo mayor elemento

Medio25 pts·Arrays

Enunciado

Próximo mayor elemento

Dado un array de enteros, devuelve un nuevo array donde cada elemento es reemplazado por el siguiente elemento mayor que aparece a su derecha en el array original.

Si no existe ningún elemento mayor a la derecha, coloca -1 en esa posición.

Ejemplos

nextGreaterElement([2, 1, 2, 4, 3])
// [4, 2, 4, -1, -1]
//  ^-- el siguiente mayor de 2 es 4
//      ^-- el siguiente mayor de 1 es 2
//          ^-- el siguiente mayor de 2 es 4
//              ^-- no hay mayor a la derecha de 4 → -1
//                  ^-- no hay mayor a la derecha de 3 → -1

nextGreaterElement([1, 3, 2, 4])
// [3, 4, 4, -1]

nextGreaterElement([4, 3, 2, 1])
// [-1, -1, -1, -1]

Restricciones

  • El array puede tener entre 0 y 10 000 elementos.
  • Los valores son enteros en el rango [-1000, 1000].
  • Debes lograr una solución en O(n) usando una pila (stack).

Pista

Recorre el array de derecha a izquierda manteniendo una pila que guarde los candidatos a "siguiente mayor". Para cada elemento, descarta de la pila todos los valores que sean menores o iguales al elemento actual antes de consultar el tope.

Restriccionesexpand_more
  • Dificultad: Medio
  • Completa todos los test cases para obtener los 25 puntos.
  • No modificar la línea export al final del archivo.
  • Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.

Puedes usar console.log() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.

Inicia sesión para reaccionar
Inicia sesión para reaccionar