Por el momento, pocas personas piensan en¿Cómo funciona la compresión de archivos? En comparación con el pasado, usar una computadora personal se ha vuelto mucho más fácil. Y casi todas las personas que trabajan con el sistema de archivos usan archivos. Pero pocas personas piensan en cómo funcionan y por qué principio se produce la compresión de archivos. Los códigos de Huffman se convirtieron en la primera versión de este proceso, y todavía se usan en varios archivadores populares. Muchos usuarios ni siquiera piensan en lo simple que es la compresión de archivos y en qué esquema funciona. En este artículo, consideraremos cómo se produce la compresión, qué matices ayudan a acelerar y simplificar el proceso de codificación, y también entenderemos cuál es el principio de construir un árbol de codificación.
El primer algoritmo para llevar a cabo eficazLa codificación de información electrónica fue el código propuesto por Huffman a mediados del siglo XX, es decir, en 1952. Es él quien en este momento es el principal elemento básico de la mayoría de los programas diseñados para comprimir información. Actualmente, una de las fuentes más populares que utilizan este código son ZIP, ARJ, RAR y muchos otros.
В основу алгоритма по Хаффману входит схема, lo que le permite reemplazar los caracteres más comunes y más probables con códigos de sistema binarios. Y los que son menos comunes se reemplazan con códigos más largos. La transición a códigos largos de Huffman ocurre solo después de que el sistema usa todos los valores mínimos. Esta técnica le permite minimizar la longitud del código para cada carácter del mensaje original como un todo.
Para ilustrar el algoritmo, tomeVersión gráfica de la construcción del árbol de códigos. Para utilizar este método para que sea efectivo, vale la pena aclarar la definición de algunos valores necesarios para el concepto de este método. El conjunto de muchos arcos y nodos que se dirigen de nodo a nodo se llama gráfico. El árbol en sí es un gráfico con un conjunto de propiedades específicas:
El código de Huffman está hecho de letrasAlfabeto de entrada. Se forma una lista de los nodos que están libres en el árbol de código futuro. El peso de cada nodo en esta lista debe ser el mismo que la probabilidad de aparición de una letra de mensaje correspondiente a este nodo. Además, entre los pocos nodos libres del árbol futuro, se selecciona el que pesa menos. Además, si se observan los indicadores mínimos en varios nodos, puede elegir libremente cualquiera de los pares.
Чтобы повысить эффективность сжатия, нужно во Es hora de construir el árbol de códigos para utilizar todos los datos sobre la probabilidad de que aparezcan letras en un archivo particular adjunto al árbol y no permitir que se distribuyan en una gran cantidad de documentos de texto. Si primero revisa este archivo, puede calcular inmediatamente las estadísticas de la frecuencia con la que se encuentran las letras del objeto a comprimir.
Para acelerar el algoritmo, la definición de letrases necesario llevar a cabo no mediante indicadores de la probabilidad de aparición de una letra, sino por la frecuencia de su aparición. Gracias a esto, el algoritmo se vuelve más simple y el trabajo con él se acelera significativamente. Esto también evita operaciones de coma flotante y división.
Códigos Huffman - Simple y de larga creaciónUn algoritmo que todavía utilizan muchos programas y empresas conocidos. Su simplicidad y comprensión hacen posible lograr resultados efectivos de compresión de archivos de cualquier tamaño y reducen significativamente el espacio que ocupan en el disco de almacenamiento. En otras palabras, el algoritmo de Huffman es un esquema estudiado y desarrollado durante mucho tiempo, cuya relevancia no disminuye hasta nuestros días.