Algoritmo :: Huffman

Algoritmo :: Huffman es una extensión Perl que implementa el algoritmo Huffman.
Descargar ahora

Algoritmo :: Huffman Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • Perl Artistic License
  • Precio:
  • FREE
  • Nombre del editor:
  • Janek Schleicher
  • Sitio web del editor:
  • http://search.cpan.org/~bigj/

Algoritmo :: Huffman Etiquetas


Algoritmo :: Huffman Descripción

Algoritmo :: Huffman es una extensión de Perl que implementa el algoritmo Huffman. Algoritmo :: Huffman es una extensión de Perl que implementa el algoritmo Huffman.Synopsis Use algoritmo :: Huffman; MI% CHAR_COUNTING = MAP {$ _ => INT RAND (100)} ('A' .. 'Z', 'A' .. 'Z'); # o mejor el conteo real para sus personajes # mientras el algoritmo Huffman no funciona bien con los datos aleatorios :-)) My $ Huff = Algorithm :: Huffman-> Nuevo (% char_counting); My $ ENCODE_HASH = $ Huff-> Encode_Hash; My $ Decode_Hash = $ Huff-> Decode_Hash; My $ ENCODE_OF_HELLO = $ Huff-> Encode_Bitstring ("Hello"); Imprimir "Mira el bitstring de codificación de 'hola': $ code_of_hellon"; Imprimir "La decodificación de $ CODE_OF_HELLO es '", $ Huff-> Decode_Bitstring ($ ENCODE_OF_HELLO), "' '; Estos módulos implementan el algoritmo Huffman. El objetivo es crear un buen esquema de codificación para una lista determinada de diferentes caracteres (o incluso cuerdas) y sus números de aparición.AlgorithmPlease, eche un vistazo a un buen libro de compresión de datos para una vista detallada. Sin embargo, el algoritmo es como todos los buenos algoritmos muy fáciles. Asumimos que tenemos un montón (las llaves son los caracteres / cadenas; los valores son sus ocurrencias). En cada paso del algoritmo, los dos caracteres más raros están mirados. Ambos obtienen un sufijo (uno "0", el otro "1"). Se unen y se unen a partir de ese momento como un "elemento" en el montón con sus ocurrencias sumadas. La unión crea un árbol que crece mientras se reduce el montón. Es un ejemplo. Dados son los personajes y ocurrencias. A (15) B (7) C (6) D (6) E (5) En el primer paso E y D son los caracteres más raros, por lo que creamos este nuevo montón y estructura de árbol: A (15) DE (11) B (7) C (6) DE / "0" / "1" D ENEXT PASO: A (15) BC (13) DE (11) DE BC / / "0" / "1" "0" / "1 "Deb Cnext Paso: A (15) BCDE (24) BCDE /" 0 "/" 1 "/ de bc / /" 0 "/" 1 "" 0 "/" 1 "Deb Cnext Step Unifies el resto: Huffman- TABLA / "0" / "1" / / BCDE A / "0" / "1" / DE BC / / "0" / "1" "0" / "1" Deb CFinally Esta tabla de codificación se creará: a 1 B 010 C 011 D 000 E 001 PORRECER LA NOTA, QUE NO HAY NO REGLA DE DEFINICIÓN DE LO QUE SE PIDE DE LO ELEMENTO EN EL ÁRBOL DE QUEJE O DERECHO. Así que también es posible obtener por ejemplo. El esquema de codificación: A 0 B 100 C 101 D 110 E 111 Requisitos: · Perl


Algoritmo :: Huffman Software relacionado