Parcours
/
WebAssembly
WebAssembly
/
Exercices
/
Codage par plages
Codage par plages

Codage par plages

Difficile

Instructions

Implémente l'encodage et le décodage par plages.

L'encodage par plages (RLE) est une forme simple de compression de données, dans laquelle des séries (des éléments de données consécutifs) sont remplacées par une seule valeur de donnée et son nombre d'occurrences.

Par exemple, on peut représenter les 53 caractères d'origine avec seulement 13.

"WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB"  ->  "12WB12W3B24WB"

L'encodage par plages permet de reconstruire parfaitement les données d'origine à partir des données compressées, ce qui en fait une compression de données sans perte.

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

Pour simplifier, tu peux supposer que la string non encodée ne contiendra que les lettres de A à Z (en minuscules ou en majuscules) et des caractères d'espacement. Ainsi, les données à encoder ne contiendront jamais de chiffres, et les chiffres présents dans les données à décoder représentent toujours le nombre d'occurrences du caractère qui suit.

Instructions spécifiques au parcours

Le tampon de la string d'entrée utilise les octets 64 à 319 de la mémoire linéaire.

La string d'entrée peut être modifiée en place si on le souhaite.


Source

WikipediaLe lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet
Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet
WebAssembly Exercism

Prêt à commencer Codage par plages ?

Inscris-toi sur Exercism pour apprendre et maîtriser WebAssembly avec 87 exercices, et un vrai mentorat humain, le tout gratuitement.