Articulo de referencia

Indexación recursiva

La indexación recursiva es un algoritmo utilizado para representar grandes valores numéricos utilizando miembros de un conjunto relativamente pequeño . La indexación recursiva e...

La indexación recursiva es un algoritmo utilizado para representar grandes valores numéricos utilizando miembros de un conjunto relativamente pequeño .

La indexación recursiva escribe las diferencias sucesivas del número después de extraer el valor máximo del conjunto alfabético del número, y continúa recursivamente hasta que la diferencia se encuentre dentro del rango del conjunto.

La indexación recursiva con un alfabeto de 2 letras se denomina código unario .

Codificación

Para codificar un número N , siga reduciendo el elemento máximo de este conjunto ( S max ) a partir de N y muestre S max para cada diferencia, deteniéndose cuando el número se encuentre en el rango semicerrado/semiabierto [0  S max ). 

Ejemplo

Sea S  =  [0 1 2 3 4 … 10], un conjunto de 11 elementos, y tenemos que indexar recursivamente el valor N=49.

Según este método, resta 10 a 49 y repite el proceso hasta que la diferencia sea un número comprendido entre 0 y 10.

Los valores son 10 ( N  =  49   10 =  39), 10 ( N  =  39   10  =  29), 10 ( N  =  29   10  =  19), 10 ( N  =  19   10  =  9), 9. La secuencia indexada recursivamente para N  =  49 con el conjunto S es  10,  10,  10,  10,  9.

Descodificación

Calcula la suma de los valores del índice.

Ejemplo

Descifrar el ejemplo anterior implica  10  +  10  +  10  +  10  +  9  =  49.

Usos

Esta técnica se utiliza con mayor frecuencia en sistemas de codificación de longitud variable para codificar secuencias más largas de las que permiten los tamaños del alfabeto.

Referencias

  • Khalid Sayood, Introducción a la compresión de datos, 3.ª ed., Morgan Kaufmann .