MakarovSuites
Español
EnglishDeutschРусскийУкраїнськаFrançaisEspañolItalianoPolski
Contacto y licencias

Math

Código de Huffman

Una cola ordenada de frecuencias se convierte en un árbol de códigos prefijo. Selecciona un símbolo para seguir sus bits y cada unión.

Código de Huffman — Imagen real de la aplicación
Imagen real de la aplicación

Qué ocurre

Cada paso une los dos pesos menores. Las ramas 0 y 1 forman el código desde la raíz hasta el símbolo. Seleccionar una letra resalta ese camino. L es la longitud media del código y H la entropía. Huffman minimiza L entre los códigos prefijo binarios de símbolos individuales, incluso si L > H. Hay igualdad para probabilidades 2^(-k). El número de bits no incluye la tabla de códigos ni las cabeceras.

Ecuaciones del módulo
Ecuaciones
construcción: se fusionan los dos nodos más ligeros, n−1 veces; el código de un símbolo es su camino desde la raíz, izquierda 0, derecha 1
L = Σ p(i)·l(i)  (bits por símbolo);  H = −Σ p(i)·log₂ p(i);  la longitud del código l(i) es la profundidad de la hoja
Kraft: todo código prefijo cumple Σ 2^(−l(i)) ≤ 1, y todo vector así es un árbol; el árbol de Huffman es completo, así que la suma es exactamente 1
H ≤ L < H + 1 siempre;  L = H exactamente cuando todo p(i) es una potencia de dos
la optimalidad se comprueba frente a una búsqueda sobre TODOS los vectores de longitudes admisibles según Kraft - la búsqueda no sabe nada del algoritmo
frecuencias iguales: 2(n − 2^k) símbolos reciben el código largo, donde 2^k es la mayor potencia de dos por debajo de n
las frecuencias de Fibonacci 1, 1, 2, 3, 5, … dan el árbol más desequilibrado: longitudes n−1, n−1, n−2, …, 1

Otros experimentos

Volver al catálogo
Mochila: la codicia contra la tabla — Imagen real de la aplicación

Math

Mochila: la codicia contra la tabla

Elige objetos numerados con un límite de peso. Compara con el voraz y el óptimo, abre una celda y sigue el camino de vuelta a la selección óptima.

Símplex en el plano — Imagen real de la aplicación

Math

Símplex en el plano

La región factible descansa sobre la mesa y encima cuelga una placa a la altura del objetivo. El objetivo es lineal, así que la placa es plana e inclinada, y el mejor punto es literalmente su esquina más alta.

La máquina de Turing y los castores afanosos — Imagen real de la aplicación

Math

La máquina de Turing y los castores afanosos

Una cinta de papel entre dos carretes, un cabezal metálico con una lámpara de estado y una tabla de reglas. Cada paso se reproduce como leer, escribir, mover, nuevo estado; el diario de abajo guarda toda la ejecución, y una regla editada conserva la antigua como un fantasma. Los récords se hallan enumerando todas las máquinas, no se citan.