Tracks
/
Scala
Scala
/
Ejercicios
/
Codificación por longitud de rachas
Codificación por longitud de rachas

Codificación por longitud de rachas

Intermedia

Instrucciones

Implementa la codificación y decodificación por longitud de rachas.

La codificación por longitud de rachas (RLE) es una forma sencilla de compresión de datos, en la que las rachas (elementos de datos consecutivos) se reemplazan por un solo valor de datos junto con su conteo.

Por ejemplo, podemos representar los 53 caracteres originales con solo 13.

"WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB"  ->  "12WB12W3B24WB"

La RLE permite reconstruir perfectamente los datos originales a partir de los datos comprimidos, lo que la convierte en una compresión de datos sin pérdida.

"AABCCCDEEEE"  ->  "2AB3CD4E"  ->  "AABCCCDEEEE"

Para simplificar, puedes asumir que el string sin codificar solo contendrá las letras de la A a la Z (ya sea en minúscula o en mayúscula) y espacios en blanco. De esta forma, los datos que se van a codificar nunca contendrán números, y los números dentro de los datos que se van a decodificar siempre representan el conteo del carácter siguiente.


Fuente

WikipediaEl enlace se abre en una ventana o pestaña nueva
Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
Scala Exercism

¿Todo listo para empezar Codificación por longitud de rachas?

Regístrate en Exercism para aprender y dominar Scala con 95 ejercicios y mentoría humana real, todo gratis.