Arboles: Un árbol es un grafo simple en el cual existe un único camino entre cada par de vértices.

Sea G =(V,A) un grafo no dirigido. G se denomina ARBOL, si es conexo y no contiene ciclos. Un árbol con raíz, es un árbol que tiene un vértice particular designado como raíz. Ejemplo de árbol:

En la figura anterior G1 corresponde a lo que llamamos mediante la definición ARBOL, en el caso de G2, éste no corresponde debido a que contiene un ciclo. Podemos destacar que cuando un grafo G es un Arbol, se reemplaza G, por R. En la figura mostrada G1 es un subgrafo de G2, en el que G1 contiene los vértices de G2 y es árbol, además lo llamaremos “árbol abarcador”, por que proporciona conexión minimal para el grafo y un esqueleto minimal que une los vértices. Ejemplo de árbol raíz:

Para apoyar el entendimiento de las definiciones entregadas agregaremos algunos teoremas. Teorema: Si a, b son vértices de un árbol R (V,A), entonces hay un camino único que conecta estos vértices.

y así sucesivamente hasta que se pasa por los vértices de Rk en orden previo. El recorrido de orden previo de R comienza en r y después pasa por los vértices de R1 en orden previo. Rk los subarboles de R según se va de izquierda a derecha.. a continuación por los vértices de R2 en orden previo. R3. la raíz... es el subarbol de G que tiene a x como raíz. con x como raíz. entonces la raíz misma constituye el recorrido en orden previo. y. entonces x es un vértice interno..Teorema: En cualquier árbol R= (V. se denomina “árbol dirigido” si el grafo no dirigido asociado con G es un árbol.A) un árbol con raíz r.A). Sea R= (V. z son vértices en G y que (v0. Teorema: Para cualquier árbol R = (V. es un camino en G. R3. .. • Si x no tiene hijos entonces x es un vértice terminal. si |A| >= 2. • Si x no es un vértice terminal. Teorema: Sea G un grafo simple con v vértices. Cuando G es un árbol dirigido. • V(n) es el hijo de v(n-1). • G es conexo y no contiene circuitos.. Supóngase que x.. . • Si x es un antepasado de y. . • G no contiene circuitos y tiene (n-1) lados. • V(n-1) es el padre de v(n). |V| = |A| + 1.. v1.. se denomina “árbol con raíz” si hay un único vértice r. después por la raíz r y a continuación por los vértices de los subarboles R2. entonces y es un descendiente de x. • El subgrafo de G que consiste en x y todos sus descendientes.A). Arboles con Raíz Sea G un grafo dirigido.. Si R no tiene otros vértices. 1. v1. • G es conexo y tiene (n-1) lados. . vn). Rk en orden simétrico. entonces se puede decir: • G es un árbol. El recorrido en orden simétrico de R primero.. v(n-1) son los antepasados de v(n).. R2.. • V0. • Si x e y son hijos de z entonces x e y son hermanos. simétrico y posterior de R.. entonces R tiene al menos dos vértices colgantes. se pasa por los vértices de R1 en orden simétrico. sean R1.. 2. Si |V| > 1. Sea G un grafo con raíz V0.

o bien ningún hijo. cada dato en el subárbol a la izquierda de v es menor que el dato correspondiente a v. Los datos se disponen de manera que para cualquier vértice v en T. Un árbol binario completo es uno en el cual cada vértice tiene un hijo a la derecha y uno a la izquierda. o bien ningún hijo. R2.. Rk en orden posterior y a continuación por la raíz.. El recorrido en orden posterior de R pasa por los vértices de los subarboles R1. o viceversa.3. Un árbol binario de búsqueda es un árbol binario T donde se han asociado datos a los vértices... cada uno de los cuales es a su vez un árbol n-ario Árbol ordenado: Si en el conjunto de subárboles de un árbol n-ario se supone definida una relación de orden total. Definición recursiva: Un árbol n-ario (con n  es un conjunto no vacío de elementos del mismo tipo 1) tal que: Existe un elemento destacado llamado raíz del árbol el resto de los elementos se distribuyen en m subconjuntos disjuntos (0   ). Teorema: Si T es un árbol binario completo con i vértices internos. llamados subárboles m n del árbol original. el árbol se denomina ordenado Árbol ordenado con raíz X y subárboles A1 …Am .. entonces T tiene i + 1 vértices terminales y 2i + 1 vértices en total. Un árbol binario es uno con raíz en el cual cada vértice tiene un hijo a la derecha o un hijo a la izquierda.

comenzando por la que está más a la derecha CODIGO DE PREFIJOS: Un código prefijo es un código. Las letras del UTF-32/UCS-4 son siempre de 32 bits de longitud. Algunos códigos de longitud variable señalan el final de una palabra de código con un símbolo especial. con la "propiedad de prefijo": ninguna palabra de código es prefijo de cualquier otra palabra de código del conjunto. Si cada palabra de código acaba en un símbolo especial. o bastante complicadas. Las pausas largas entre letras.Árbol 3-ario de números enteros 1 2 Un árbol n-ario se dice homogéneo si todos sus subárboles excepto las hojas tienen n hijos. 1. el código se llama código de longitud fija. Por ejemplo. Si cada palabra en el código tiene la misma longitud. Éste es de alguna manera análogo al punto del final de una frase. y usarlo sólo al final de las palabras sería ineficiente. Los paquetes ATM son siempre de 424 bits de longitud. es un código sin prefijo. la codificación de longitud fija es ineficiente en situaciones donde algunas palabras son mucho más probables de ser transmitidas que otras. • Un árbol homogéneo es completo cuando todas sus hojas tienen la misma profundidad • Un árbol se dice casi-completo cuando se puede obtener a partir de un árbol completo eliminando hojas consecutivas del último nivel. 11} no la tiene. porque "1" es prefijo de tanto "10" como "11". los sistemas de comunicación modernos envían todo como secuencias de "0" y "1" – añadir un tercer símbolo sería caro. y las pausas . Un código con las palabras de código {0. Desafortunadamente. El código Morse es un ejemplo cotidiano de un código de longitud variable con un símbolo especial. 11} tiene la propiedad de prefijo. Sin embargo. Las técnicas para construir un código prefijo pueden ser simples. típicamente un código de longitud variable. las letras del ISO 8859-15 son siempre de 8 bits de longitud. 10. Los prefijos no pueden existir en un código de longitud fija. marca donde acaba una frase y comienza la siguiente. 10. y el símbolo especial no aparece en la palabra de código. un código {0.

su optimalidad a veces puede verse accidentalmente exagerada. incluso cuando dicho código no se ha producido con el algoritmo de Huffman. y en general se adaptan a las estadísticas de entrada reales. La codificación Huffman es un método para crear códigos prefijo tan extendido que el término "codificación Huffman" es ampliamente usado como sinónimo de "código prefijo". Este último es útil cuando las probabilidades no se conocen de forma precisa o varían significativamente dentro del flujo de datos. que da lugar a un código prefijo (es decir.aún más largas entre palabras. y donde comienza la siguiente. Por ejemplo. Para un grupo de símbolos con una distribución de probabilidad uniforme y un número de miembros que es potencia de dos. La codificación Huffman usa un método específico para elegir la representación de cada símbolo. Posteriormente se encontró un método para llevar esto a cabo en un tiempo lineal si las probabilidades de los símbolos de entrada (también conocidas como "pesos") están ordenadas. ayudan a la gente a reconocer donde una letra (o palabra) acaba. El término se refiere al uso de una tabla de códigos de longitud variable para codificar un determinado símbolo (como puede ser un caracter en un archivo). CODIGO DE PREFIJOS DE HUFFMAN En ciencias de la computación y teoría de la información. Aunque la codificación de Huffman es óptima para una codificación símbolo a símbolo dada una distribución de probabilidad. Estos dos métodos pueden agrupar un número arbitrario de símbolos para una codificación más eficiente. . la codificación ASCII. y publicado en "A Method for the Construction of Minimum-Redundancy Codes". por ejemplo. y viceversa. donde la tabla ha sido rellenada de una manera específica basándose en la probabilidad estimada de aparición de cada posible valor de dicho símbolo. Fue desarrollado por David A. la codificación Huffman es equivalente a una codificación en bloque binaria. Huffman mientras era estudiante de doctorado en el MIT. la codificación Huffman es un algoritmo usado para compresión de datos. la codificación aritmética y la codificación LZW normalmente ofrecen mayor capacidad de compresión. Huffman fue capaz de diseñar el método de compresión más eficiente de este tipo: ninguna representación alternativa de un conjunto de símbolos de entrada produce una salida media más pequeña cuando las frecuencias de los símbolos coinciden con las usadas para crear el código. la cadena de bits que representa a un símbolo en particular nunca es prefijo de la cadena de bits de un símbolo distinto) que representa los caracteres más comunes usando las cadenas de bits más cortas.

Sign up to vote on this title
UsefulNot useful