Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Junio 2014
Cdigo Huffman
En 1952, David Huffman propuso un mtodo estadstico que permita asignar un cdigo binario a
los diversos smbolos a comprimir (pxeles o caracteres, por ejemplo). La longitud de cada
cdigo no es idntica para todos los smbolos: se asignan cdigos cortos a los smbolos
utilizados con ms frecuencia (los que aparecen ms a menudo), mientras que los smbolos
menos frecuentes reciben cdigos binarios ms largos. La expresin Cdigo de Longitud
Variable (VLC) se utiliza para indicar este tipo de cdigo porque ningn cdigo es el prefijo de
otro. De este modo, la sucesin final de cdigos con longitudes variables ser en promedio ms
pequea que la obtenida con cdigos de longitudes constantes.
El codificador Huffman crea una estructura arbrea ordenada con todos los smbolos y la
frecuencia con que aparecen. Las ramas se construyen en forma recursiva comenzando con los
smbolos menos frecuentes.
La construccin del rbol se realiza ordenando en primer lugar los smbolos segn la frecuencia
de aparicin. Los dos smbolos con menor frecuencia de aparicin se eliminan sucesivamente
de la lista y se conectan a un nodo cuyo peso es igual a la suma de la frecuencia de los dos
smbolos. El smbolo con menor peso es asignado a la rama 1, el otro a la rama 0 y as
sucesivamente, considerando cada nodo formado como un smbolo nuevo, hasta que se obtiene
un nodo principal llamado raz.
El cdigo de cada smbolo corresponde a la sucesin de cdigos en el camino, comenzando
desde este carcter hasta la raz. De esta manera, cuanto ms dentro del rbol est el smbolo,
ms largo ser el cdigo.
Analicemos la siguiente oracin: "COMMENT_CA_MARCHE". Las siguientes son las
frecuencias de aparicin de las letras:
M A C E _ H O N T R
3 2 2 2 2 1 1 1 1 1
ste es el rbol correspondiente:
Los cdigos correspondientes a cada carcter son tales que los cdigos para los caracteres ms
frecuentes son cortos y los correspondientes a los smbolos menos frecuentes son largos:
M A