Codificación de Huffman
David Buñay
Mateo Quizhpi
Erick Barzallo
Codificación de Huffman
- Es una técnica utilizada para la compresión de datos, ya sean archivos o
mensajes de texto
- Permite el ahorro de espacio como también la reducción del tiempo de
transmisión de datos
- Uso de código prefijo
- Conjunto de P de cadenas binarias asociadas a un conjunto de símbolos (0s 1s) en el cual el
principio de una cadena no puede ser otra cadena.
Ejemplo: x-> 001 y-> 110 z->10 + -> 11
Obtención del Código Prefijo
1. Construcción de un árbol dirigido con raíz binario
a. Nodos de la izquierda serán etiquetados con 1 o con 0
b. Nodos de la derecha serán etiquetados con 0 o con 1
2. Los vértices finales se les asignan los caracteres
Los símbolos menos probables tendrán códigos más largos, y los más probables
tendrán códigos más cortos
Ejemplo
- En un fichero de x caracteres se tiene 6 caracteres con las siguientes
frecuencias de aparición
1. Ordenar las frecuencias de menor a mayor
Caracter x y * + ( )
Frecuencia 10 10 15 25 20 20
10 10 15 20 20 25
2. Se toman los valores más pequeños y sumar, formando una nueva sublista
manteniendo el orden de menor a mayor. 1ra suma
3. Se vuelve a repetir el paso anterior, sumar los valores más pequeños y formar
una nueva sublista manteniendo el orden de menor a mayor. 2da suma
10 10 15 20 20 25
15 20 20 20 25
15 20 20 20 25
20 20 25 35
4. Realizamos las 4ta suma
5. Procedemos con la 5ta suma
6. Cuando se tiene una sublista de dos elementos, finaliza las sumas
20 20 25 35
25 35 40
40 60
25 35 40
40 60
Construcción del Árbol
Para la construcción del árbol binario seguimos los siguientes pasos:
1. Crear la raíz del árbol con los respectivos vértices, los cuales corresponden a
los dos últimos valores de la lista
40 60 R
40 60
2. Regresamos en las sublistas cambiando los valores de los nodos con los
sumandos correspondientes
40 60
25 35 40
R
40 60
R
40
25 35
3. Continuamos regresando en las sublistas
20 20 25 35
25 35 40
R
40
25 35
R
25 3520 20
15 20 20 20 25
20 20 25 35
R
2520 20
15 20
10 10 15 20 20 25
15 20 20 20 25
R
2520 20
15
10 10
Sustitución
Una vez que se obtenga por completo
el árbol, reemplazamos los nodos
finales que corresponden a
las frecuencias de los caracteres para
la obtención del código prefijo
R
2520 20
15
10 10
R
+( )
*
x y
Caracter x y * + ( )
Frecuencia 10 10 15 25 20 20
Finalmente se colocan las etiquetas de los respectivos nodos, recordando que
para este ejemplo las etiquetas serán 0 a la izquierda y 1 a la derecha
R
+( )
*
x y
0
0 1 0
0
0
1
1
1
1
Para la formación del binario de cada carácter, se debe leer desde la raíz principal
para obtener el código correspondiente
Caracter x y * + ( )
Frecuencia 10 10 15 25 20 20
Código 1110 1111 110 10 00 01
Bibliografía
- Universitat Politècnica de València, (2013). Teoría de Grafos en la vida real. Árboles.
Codificación de Huffman. ©. [video] Available at:
https://www.youtube.com/watch?v=W6WZT12ruGQ
- Algoritmos y Estructuras de Datos. (2016). 1st ed. [ebook] Santa Fe, Argentina:
Universidad Nacional del Litoral, pp.166 - 169. Available at:
http://www.cimec.org.ar/~mstorti/aed/aednotes.pdf

Más contenido relacionado

PPTX
Huffman y-lzw
DOCX
PPTX
Grafos 9.2 2016
PDF
Codificación de Huffman
PDF
Linux 3
PDF
Subred
PPTX
Codificación de Huffman
PPTX
Introducción al calculo de subredes
Huffman y-lzw
Grafos 9.2 2016
Codificación de Huffman
Linux 3
Subred
Codificación de Huffman
Introducción al calculo de subredes

La actualidad más candente (10)

PDF
PDF
Calculo de sub redes
PPTX
Subredes
PPT
DOC
Documents.tips metodo para-el-calculo-de-subredes
PPTX
Clases de subredes
PDF
Arbol De Huffman
PPT
CODIGO DE HUFFMAN
Calculo de sub redes
Subredes
Documents.tips metodo para-el-calculo-de-subredes
Clases de subredes
Arbol De Huffman
CODIGO DE HUFFMAN
Publicidad

Destacado (11)

PPS
Como criar futuros delincuentes
PDF
Er. Sumit Kulkarni
PDF
30 nov-2009 observaciones al informe para primer debate del proyecto de ley o...
DOCX
Taller de comuniocacion123
ODP
Clima santander angela
PPTX
Diabetic Retinopathy
DOC
gxudba
PDF
Team Member ~ Company Profile
DOCX
Docencia universitaria
TXT
Acrire do-cucurbitacee
Como criar futuros delincuentes
Er. Sumit Kulkarni
30 nov-2009 observaciones al informe para primer debate del proyecto de ley o...
Taller de comuniocacion123
Clima santander angela
Diabetic Retinopathy
gxudba
Team Member ~ Company Profile
Docencia universitaria
Acrire do-cucurbitacee
Publicidad

Similar a Codificación de huffman (20)

PPTX
CODIGO HUFFMAN-1.pptx
PDF
Presentacion Foro eulises brazon Josue Baez
PPTX
Huffman
PPTX
Algoritmo de compresión de huffman
PPT
Codigos De Huffman
PPTX
Grafos 9.2_2016
PPTX
TPerterterteertertrerterter terterterterterterN°7 - AB.pptx
DOCX
Algoritmos compresión Cubi-Romero-Toledo
PDF
Grafos 9.2 2016
PDF
Algoritmos de compresion
PPTX
Codificación Huffman.pptx
PPTX
Algoritmos de compresión
PDF
Hpcs conf poster
PDF
Codificacion HUFFMAN en matlab
PPT
Lecture 3 codificación fuente
PPTX
Teoría de códigos
DOC
Greedy
PPT
3 estructuras no lineales estáticas y dinámicas
PDF
arbol.pdf
PPTX
Teoría de códigos saira isaac
CODIGO HUFFMAN-1.pptx
Presentacion Foro eulises brazon Josue Baez
Huffman
Algoritmo de compresión de huffman
Codigos De Huffman
Grafos 9.2_2016
TPerterterteertertrerterter terterterterterterN°7 - AB.pptx
Algoritmos compresión Cubi-Romero-Toledo
Grafos 9.2 2016
Algoritmos de compresion
Codificación Huffman.pptx
Algoritmos de compresión
Hpcs conf poster
Codificacion HUFFMAN en matlab
Lecture 3 codificación fuente
Teoría de códigos
Greedy
3 estructuras no lineales estáticas y dinámicas
arbol.pdf
Teoría de códigos saira isaac

Último (9)

PPTX
Control de seguridad en los sitios web.pptx
PDF
DNS_SERVIDORES PARA ASER PRACTICAS EN REDES
PPTX
PROPIEDADES Y METODOS DE PrOO CON PYTHON
PPTX
presentación de introducción a las metodologías agiles .pptx
PPTX
ORIGEN DE LA IA - GRADO 1102 INTELIGENCIA
PPTX
hojas_de_calculo_aplicado para microsoft office
PDF
Presentacion de compiladores e interpretes
PPTX
Implementación equipo monitor12.08.25.pptx
PDF
Clase 3 - Presentación visual (Insertando objetos visuales) POWER POINT.pdf
Control de seguridad en los sitios web.pptx
DNS_SERVIDORES PARA ASER PRACTICAS EN REDES
PROPIEDADES Y METODOS DE PrOO CON PYTHON
presentación de introducción a las metodologías agiles .pptx
ORIGEN DE LA IA - GRADO 1102 INTELIGENCIA
hojas_de_calculo_aplicado para microsoft office
Presentacion de compiladores e interpretes
Implementación equipo monitor12.08.25.pptx
Clase 3 - Presentación visual (Insertando objetos visuales) POWER POINT.pdf

Codificación de huffman

  • 1. Codificación de Huffman David Buñay Mateo Quizhpi Erick Barzallo
  • 2. Codificación de Huffman - Es una técnica utilizada para la compresión de datos, ya sean archivos o mensajes de texto - Permite el ahorro de espacio como también la reducción del tiempo de transmisión de datos - Uso de código prefijo - Conjunto de P de cadenas binarias asociadas a un conjunto de símbolos (0s 1s) en el cual el principio de una cadena no puede ser otra cadena. Ejemplo: x-> 001 y-> 110 z->10 + -> 11
  • 3. Obtención del Código Prefijo 1. Construcción de un árbol dirigido con raíz binario a. Nodos de la izquierda serán etiquetados con 1 o con 0 b. Nodos de la derecha serán etiquetados con 0 o con 1 2. Los vértices finales se les asignan los caracteres Los símbolos menos probables tendrán códigos más largos, y los más probables tendrán códigos más cortos
  • 4. Ejemplo - En un fichero de x caracteres se tiene 6 caracteres con las siguientes frecuencias de aparición 1. Ordenar las frecuencias de menor a mayor Caracter x y * + ( ) Frecuencia 10 10 15 25 20 20 10 10 15 20 20 25
  • 5. 2. Se toman los valores más pequeños y sumar, formando una nueva sublista manteniendo el orden de menor a mayor. 1ra suma 3. Se vuelve a repetir el paso anterior, sumar los valores más pequeños y formar una nueva sublista manteniendo el orden de menor a mayor. 2da suma 10 10 15 20 20 25 15 20 20 20 25 15 20 20 20 25 20 20 25 35
  • 6. 4. Realizamos las 4ta suma 5. Procedemos con la 5ta suma 6. Cuando se tiene una sublista de dos elementos, finaliza las sumas 20 20 25 35 25 35 40 40 60 25 35 40 40 60
  • 7. Construcción del Árbol Para la construcción del árbol binario seguimos los siguientes pasos: 1. Crear la raíz del árbol con los respectivos vértices, los cuales corresponden a los dos últimos valores de la lista 40 60 R 40 60
  • 8. 2. Regresamos en las sublistas cambiando los valores de los nodos con los sumandos correspondientes 40 60 25 35 40 R 40 60 R 40 25 35
  • 9. 3. Continuamos regresando en las sublistas 20 20 25 35 25 35 40 R 40 25 35 R 25 3520 20
  • 10. 15 20 20 20 25 20 20 25 35 R 2520 20 15 20
  • 11. 10 10 15 20 20 25 15 20 20 20 25 R 2520 20 15 10 10
  • 12. Sustitución Una vez que se obtenga por completo el árbol, reemplazamos los nodos finales que corresponden a las frecuencias de los caracteres para la obtención del código prefijo R 2520 20 15 10 10
  • 13. R +( ) * x y Caracter x y * + ( ) Frecuencia 10 10 15 25 20 20
  • 14. Finalmente se colocan las etiquetas de los respectivos nodos, recordando que para este ejemplo las etiquetas serán 0 a la izquierda y 1 a la derecha R +( ) * x y 0 0 1 0 0 0 1 1 1 1
  • 15. Para la formación del binario de cada carácter, se debe leer desde la raíz principal para obtener el código correspondiente Caracter x y * + ( ) Frecuencia 10 10 15 25 20 20 Código 1110 1111 110 10 00 01
  • 16. Bibliografía - Universitat Politècnica de València, (2013). Teoría de Grafos en la vida real. Árboles. Codificación de Huffman. ©. [video] Available at: https://www.youtube.com/watch?v=W6WZT12ruGQ - Algoritmos y Estructuras de Datos. (2016). 1st ed. [ebook] Santa Fe, Argentina: Universidad Nacional del Litoral, pp.166 - 169. Available at: http://www.cimec.org.ar/~mstorti/aed/aednotes.pdf