¿Quieres un reto mayor?
Resuelve en 15:00
Importante: Para que se registre el resultado tienes que iniciar sesión.
Este ejercicio fue usado en una prueba técnica de empleo.
Bandera Nacional Holandesa / Segregación RGB
Enunciado
Este ejercicio fue preguntado por Google.
Dada una lista de caracteres que contiene únicamente los valores 'R', 'G' y 'B', ordena los elementos del arreglo de forma que todas las 'R' queden primero, las 'G' en el centro, y las 'B' al final. Solo puedes intercambiar elementos del arreglo. Hazlo en tiempo lineal y en su lugar (in-place).
Por ejemplo, dado el arreglo ['G', 'B', 'R', 'R', 'B', 'R', 'G'], debe convertirse en ['R', 'R', 'R', 'G', 'G', 'B', 'B'].
segregateRGB(['G', 'B', 'R', 'R', 'B', 'R', 'G']) // ['R', 'R', 'R', 'G', 'G', 'B', 'B']
Nota: El algoritmo óptimo corre en O(n) con O(1) espacio extra.
Restriccionesexpand_more
- Dificultad: Difícil
- Completa todos los test cases para obtener los 100 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.