Codificación huffman

Definición - ¿Qué significa Codificación Huffman?

La codificación de Huffman es un algoritmo de codificación de datos sin pérdidas. El proceso detrás de su esquema incluye clasificar valores numéricos de un conjunto en orden de frecuencia. Los números menos frecuentes se eliminan gradualmente a través del árbol de Huffman, que agrega las dos frecuencias más bajas de la lista ordenada en cada nueva "rama". Luego, la suma se coloca encima de los dos valores de frecuencia más bajos eliminados y los reemplaza en la nueva lista ordenada. Cada vez que se crea una nueva rama, se mueve la dirección general del árbol hacia la derecha (para valores más altos) o hacia la izquierda (para valores más bajos). Cuando la lista ordenada se agota y el árbol está completo, el valor final es cero si el árbol termina en un número de la izquierda, o es uno si termina en la derecha. Este es un método para reducir código complejo en secuencias más simples y es común en la codificación de video.

Techinfo explica la codificación Huffman

La compresión de datos tiene una historia anterior a la informática física. El código Morse, por ejemplo, comprime la información asignando códigos más cortos a los caracteres que son estadísticamente comunes en el idioma inglés (como las letras “e” y “t”). La codificación de Huffman surgió como resultado de un proyecto de clase en el MIT de su entonces estudiante, David Huffman.

En 1951, Huffman estaba tomando una clase con Robert Fano, quien (con la ayuda de un ingeniero y matemático llamado Claude Shannon) inventó un esquema de eficiencia conocido como codificación Shannon-Fano. Cuando Fano le dio a su clase la oportunidad de escribir un trabajo final o tomar un examen final, Huffman eligió el trabajo final, que buscaba encontrar un método de codificación binaria eficiente. Esto resultó en la codificación de Huffman, que en la década de 1970 se había convertido en un algoritmo de codificación digital prominente.