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
exportal 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