You are on page 1of 20

Teora de grafos

Uno de los primeros de la teora de grafos fue el que obtuvo Leonhard Euler en el siglo XVIII al resolver el problema de los puentes de Knigsberg. Este problema consiste en recorrer 7 puentes que conectan 4 porciones de tierra, bajo la condicin de pasar por cada puente una sola vez. En la figura 1, se muestra la forma en que estn distribuidos los puentes.

Euler present este problema por medio de una figura como la siguiente (figura 2)

Y la llam grafo. A las porciones de tierra representadas por un punto las llam vrtices, a los puentes representados por lneas le dio el nombre de aristas y el nmero de lneas que salen o entran a un vrtice lo llam orden del vrtice que ms tarde se llam valencia. Los grafos son representaciones de las redes, y por medio de ellos se puede expresar de forma visual y sencilla las relaciones entre elementos de distinto tipo. En computacin, los grafos se utilizan para mostrar las relaciones entre archivos (en la base de datos), entre registros (en la estructura de datos), entre computadoras y entre redes como la hace la red internet. Los grafos son relaciones, como las que se expusieron en el tema anterior que resultan ser muy tiles gracias a la forma en las que se le puede representar, ya que es muy claro ver la relacin entre dos elementos en un grafo que en una matriz o en un conjunto.

Partes de un Grafo.
Un grafo (G) es un diagrama que consta de un conjunto de vrtices (V) y un conjunto de lados (L). Considerando el siguiente grafo (figura 3):

A partir de la figura 3, se definen los siguientes elementos: Vrtice (nodos).- se indica por medio de un pequeo crculo y se les asigna un nmero o letra. En el grafo de la figura 3, los vrtices son V = {a, b, c, d}. Lados (ramas o aristas).- son las lneas que unen un vrtice a otro y se les asigna una letra, un nmero o una combinacin de ambos. En el grafo de la figura 3 los lados son L = {1, 2, 3, 4, 5 ,6} Lados paralelos.- son aquellas aristas que tiene relacin con un mismo par de vrtices. En el grafo de la figura 3, los lados paralelos son Lp = {2, 3} Lazo.- es aquella arista que sale de un vrtice y regresa al mismo vrtice. En el grafo de la figura 3, se tiene el lazo: A = {6}. Valencia de un vrtice.- es el nmero de lados que salen o entran a un vrtice. En el grafo de la figura 3, las valencias de los vrtices son: Valencia (a) = 2 Valencia (b) = 4 Valencia (c) = 2 Valencia (d) = 3 Hay que observar, como en el caso del vrtice d el lazo slo se considera una vez, entrada o salida pero no ambos.

Tipos de grafos.
Grafos simples.- son aquellos que no tienen ni lazo ni lados paralelos. Por ejemplo. en la siguiente figura se muestra un ejemplo de un grafo simple (figura 4).

Grafo completo de n vrtices (Kn).- es el grafo en donde cada vrtice est relacionado con todo los dems, sin lazo ni lados paralelos. Se indica como Kn, en donde n es el nmero de vrtices del grafo. Por ejemplo. en la siguiente figura se muestra tres ejemplos de grafos completos (figura 5).

La valencia en cada uno de los vrtices de los grafos completos (n-1), y el nmero de lados est dado por la expresin. Nmero de la lados = En donde n es el nmero de vrtices del grafo. Por ejemplo. En la siguiente figura (figura 6), muestra un grafo K5, y tiene:
( )

Valencia de cada vrtice = (5-1). Nmero de la lados = Complemento de un grafo (G)

Es un grafo que le falta al grafo G, de forma que entre ambos forman un grafo completo de n vrtices. Este grafo no tiene lazos ni ramas paralelas. En la siguiente figura (figura 7), se muestra un ejemplo de grafo G junto con su complemento G:

Grafo Bipartido. Es el grafo que est compuesto por dos conjuntos de vrtices, A={a 1, a2, a3, ., an} y B={b1, b2, b3, ., bm}, en donde los elementos del conjunto A se relacionan con los elementos del conjunto B, pero entre los vrtices de un mismo conjunto no existe arista que los una. Sean los conjuntos de vrtices A = {1, 2, 3, 4} y B = {5, 6, 7}, con los cuales se forman los siguientes grafos (figura 8).

Estos dos grafos son bipartidos, ya que los elementos del conjunto A estn relacionados con los del conjunto B, pero los elementos entre un mismo conjunto no hay relacin alguna.

Una forma muy sencilla se saber si un grafo es bipartido es aplicar el hecho de que nunca tiene un ciclo de longitud impar, adems de que debe de cumplir con la caracterstica mencionada anterior. Grafos bipartido completo (Kn,m).

El grafo est compuesto por dos conjuntos de vrtices, uno de ellos A={a 1, a2, a3, ., an} y B={b1, b2, b3, ., bm}, y en el que cada vrtices de A esta unido con todo los vrtices de B, pero entre los vrtices de un mismo conjunto no existen arista que los una. El grafo bipartido completo se indica como Kn,m. En la siguiente figura se muestran dos grafos bipartidos completos (figura 9).

En el caso de K4,2 se tiene que A= {1, 2, 3, 4} y B={a, b}, mientras que en K 2,3 se tiene que A={a, b} y B={1, 2, 3}

Representacin matricial. El uso de matrices para representar sistemas de ecuaciones, relaciones o grafos permita una rpida y clara manipulacin de la informacin, as como el determinar algunas propiedades de los grafos que de otra manera seran ms difciles de obtener. Adems de esto se tiene que en la computadora es ms fcil el manejo de matrices, ya que se puede tratar como arreglos o listas doblemente ligadas. A continuacin se describen las representaciones matriciales de los grafos. Matriz de Adyacencia (Ma) Es una matriz cuadrada en la cual los vrtices del grafo se indican como filas y como columnas: el orden de los vrtices es el mismo que guardan las filas y las columnas de la matriz. Se colocan 1 como elemento de la matriz cuando existe una relaciones entre uno y otro vrtice, o bien un 0 cuando no exista relacin alguna. Por ejemplo en la figura 10, se muestra un grafo con su matriz de adyacencia correspondiente.

Algo que se puede observar en la matriz de adyacencia es que no se pueden representar en ella los lados paralelos, como ocurre con el par de arista que une los nodos b y d. En esta matriz tambin la mayora de las aristas estn repetidas, como ocurre con la arista que une a los vrtices b y c que tiene un 1 en la lnea b y columna c, pero que tambin tiene un 1 en la fila c y columna b. Por ltimo, los lazos, a diferencias de las aristas normales solamente se representan una sola vez. Se puede concluir que la matriz de adyacencia es buena para llevar a cabo operaciones con relaciones, pero que no permite registrar en ella toda la informacin del grafo. Matriz de incidencia (Mi) En esta matriz se colocan los vrtices del grafo como filas y las aristas como columnas. Considrese la figura 11, ejemplo de un grafo con su matriz de incidencia correspondiente:

En esta matriz si es posible representar lados paralelos, como ocurre con r1, r2, r5 y r6. Al sumar los elementos de cada una de las filas se obtiene la valencia de los vrtices, y al sumar las columnas es posible distinguir cuando se trata de un lazo ya que su suma es 1, como ocurre con r3 y r8. Cuando no se trata de lazos, el resultado de la suma es 2.

Caminos y circuitos.
En un grafo se puede recorrer la informacin de diferente manera, lo cual implica seguir distintas rutas para llegar a un nodo del grafo a otro. A continuacin se definen varios conceptos relacionados con el recorrido de un grafo, y en el ejemplo figura 12, se ilustran estos.

Camino.- es una sucesin de lados que van de un vrtices x a un vrtices w (dichos lados se pueden repetir). Circuito (ciclo).- es un camino de vrtice w al vrtice w, esto es, un camino que regresa a donde sali. Circuito simple de longitud n.- es aquel camino del vrtice w al vrtice w que solamente tiene un ciclo en la ruta que sigue. Camino simple de longitud n.- es una sucesin de lados que van de un vrtice x a un vrtice w, en donde, los lados que componen dicho camino son distintos e iguales a n. esto significa que no se puede pasar dos veces por una misma arista. Con relacin al grafo:

Se tienen los recorridos que muestra la tabla con sus correspondientes caractersticas:
Recorrido {a, b, c, d, e, f} {a, h, a, b, c} {c, e, e, d, c, b} {d, e, g, e, e, d} {e, e} {h, a, b, c, a, h} {c, d, e, c} {a, b, c, d, e, c} {a, h, a} {b, a, c, d, f} Camino * * * * * * * * * * Camino simple de longitud n *L=5 *L=5 * * * * * *L=4 *L=1 *L=3 *L=2 Circuito Circuito simple de longitud n

Grafo conexo.- es aquel en el que para cualquier par de vrtices de w, x, distintos entre s, existe un trayecto para ir de w a x. Por ejemplo un grafo conexo y un no conexo (figura 13)

En el grafo conexo (conectado) siempre existe un camino para ir de un vrtice a otro, sin embargo en el grafo no conexo existe vrtices que no estn conectados y, por lo tanto, no se puede acceder a ellos. As, en el grafo no conexo del ejemplo (figura 13), no se puede tener un camino para ir del vrtice b al e. Camino de Euler.- es aquel camino que recorre todos los vrtices pasando por todas las ramas solamente una vez. Una caracterstica importante de los grafos que tienen camino de Euler es que siempre comienza y terminan en vrtices que tienen valencia impar, por esta razn es imposible que en el grafo de la figura 14 un camino pueda comenzar en el vrtice f. por otro lado, si un grafo tiene ms de dos vrtices con valencia impar, entonces no puede tener un camino de Euler ya que es requisito que tenga dos y solamente dos vrtices de valencia impar.

Circuito de Euler.- es aquel ciclo que recorre todos los vrtices pasando por todos los lados solamente una vez. Un grafo tiene un circuito de Euler s y slo s es conexo y todos sus vrtices tienen valencia par. El siguiente algoritmo de Fleury permite determinar un ciclo de Euler: 1) Verificar que el grafo sea conexo y que todos los vrtices tengan valencia par. Si no cumple con estas condiciones entonces el grafo no tiene circuito de Euler y finalizar. 2) Si cumple con la condicin anterior, seleccionar un vrtice arbitrario para iniciar el recorrido, 3) Escoger una arista a partir del vrtice actual. Esa arista seleccionada no debe ser lado puente, a menos que no existe otra alternativa. a. Lado puente. Es aquella arista que si se elimina, los grafos pierden la propiedad de ser conexo. 4) Desconectar los vrtices que estn unidos por la arista seleccionada. 5) Si todos los vrtices del grafo ya estn desconectados, ya se tiene el circuito de Euler y finalizar. De otra manera continuar con el paso 3.

La firma del diablo es un juego que consiste en dibujar una figura sin levantar el lpiz del papel, partiendo de un punto y regresando nuevamente a l sin pasar dos veces por una misma arista. Este problema se pude resolver por medio del circuito de Euler. Ejercicios en casa: determinar si los siguientes grafos (figura 15) del a), b) y c) tiene un circuito de Euler, sealando la secuencia de los vrtices (camino):

Circuito de Hamilton.- se trata de un problema similar al del circuito de Euler, con la diferencia de que en lugar de pasar por todos los lados del grafo solamente una vez, en el circuito de Hamilton se pasa por cada vrtice solamente una vez. El problema surgi en el siglo XIX cuando Hamilton invento un juego, cuando estaban colocados nombres de ciudades en la esquina de un dodecaedro. El juego consiste en iniciar en cualquier ciudad, viajar a lo largo de las aristas y visitar cada una de las ciudades exactamente una vez y regresar al punto de partida. Respecto de un grafo se sabe que tiene un circuito de Euler si es conexo y si todos sus vrtices tienen valencia par, sin embargo no hay forma de saber con anticipacin si un grafo tiene o no un circuito de Hamilton. Determinar, si es posible, un circuito de Hamilton en el siguiente grafo (figura 16).

La solucin del circuito de Hamilton es como se indica en el grafo (figura 17)

Como se ve, el circuito de Hamilton es {a, b, h, g, e, j, i, f, d, c, a}, que sera la lnea punteada, o bien pudo haber si tambin {a, c, f, i, j, e, g, h, b, a}. En general los algoritmos para obtener un circuito de Hamilton en un grafo tardan un tiempo exponencial, y estn en funcin del nmero de vrtices y aristas.

Grafos Planos
Un grafo plano es aquel que se puede dibujar en un solo plano y cuyas aristas no se cruzan entre s. Por otro lado la ecuacin de Euler A = L V + 2; en donde A= nmero de arista, L = nmero de lados y V= nmero de vrtices, es vlida para un grafo plano y conexo. El siguiente grafo es un ejemplo de grafo plano y conexo (figura 18)

Se consideran reas a todas aquellas secciones cerradas {1, 2, 3, 4, 5, 6} y a la seccin rodea el grafo {7}, como se muestra en la figura 19.

rbol
Uno de los problemas principales para el tratamiento de los grafos es que no guardan una estructura establecida y que no respetan reglas, ya que la relacin entre los nodos puede ser tan compleja como la misma naturaleza. Sin embargo, este es un problema cuando se trata de usarlos para el tratamiento y organizacin de informacin, dentro del campo de la computacin. En lugar de usar grafos que estn estructurados sin regla alguna, en computacin se utilizan grafos con caractersticas particulares que permiten un mejor tratamiento de la informacin y que se conocen como rboles. Una de las primeras aplicaciones de los rboles se present en 1847 cuando Gustav Kirchhoff los utiliz en la manipulacin de redes elctricas; otra aplicacin importante la llev a cabo Grace Harper en 1951 al manejarlos en las expresiones matemticas. En la actualidad los rboles se usan en la computacin en los procesos de clasificacin de informacin, bases de datos, codificacin de informacin, estructura de datos y reconocimiento de patrones. Tomando en cuenta la teora de grafos expuesta en el tema anterior, el concepto de rbol se puede definir en los siguientes trminos: Definicin. Un rbol es un grafo conexo que no tiene ciclos, lazos ni lados paralelos.

Propiedades de los rboles


Las propiedades bsicas de un rbol son los siguientes. a) Es un grafo conexo en donde existe un camino entre cualquier par de vrtices (w, x). b) Este grafo no tiene ciclos ni lados paralelos. c) Todo rbol con al menos dos vrtices tiene al menos una hoja (si se considera al otro vrtice la Raz)

Un grafo con caractersticas de rbol es el que se parece a un rbol real con sus ramas hacia abajo como se muestra en la figura 20.

Los vrtices de un rbol reciben el nombre de nodos y los lados de ramas. Un grafo est compuesto por niveles y el ms alto de la jerarqua se llama raz. La raz tiene un nivel 0, los vrtices inmediatamente debajo de la raz tiene un nivel 1 y as sucesivamente. La altura o peso de un rbol es el valor de su nivel ms bajo, por ejemplo en el rbol de la figura 20 la altura es 3.

Con excepcin de la raz, todo nodo est vinculado a otro de mayor nivel que recibe el nombre de padre, tambin cualquier nodo puede tener uno o ms elementos relacionados en un nivel ms bajo y a estos se le llama hijos. En el rbol de la figura 20 la raz es a y los hijos de la raz son {b, c, d}. Como se ve, ningn hijo puede tener ms de un padre. A los elementos que estn en la puntas de las ramas (es decir, que no tienen hijos) se le llama hojas. En el grafo de la figura 20, las hojas son {d, e, g, i, j, k, l, m, n}. A todos los elementos colocados debajo de un nodo, independientemente de su nivel, se les llama descendientes. En el grafo de la figura 20 el nodo c tiene como descendientes a los nodos {h, i, l, m, n} y entre ellos se puede formar el subrbol {c, h, i, l, m, n}. En casos como este se dice que un rbol puede estar integrado por varios subrboles. Los elementos colocados en una misma lnea de descendencia, antes de un nodo, se llama antecesores. En la figura 20 los antecesores de k son {f, b, a}. Por otro lado, se llaman vrtices internos a todos aquellos que no son hojas. En la figura 20 {a, b, c, f, h} son vrtices internos.

Tipos de rboles.
Los rboles se pueden clasificar de acuerdo con su nmero de nodos y en funcin de su altura. Clasificacin por nmero de nodos

En este caso los arboles pueden ser binarios (cada nodo padre tiene uno o dos hijos mximos), trinarios (cada nodo padre tiene un mximo de tres hijos), cuaternarios (cada nodo padre tiene como mximo cuatro hijos), etc. En la figura 21, se muestra un ejemplo de rbol trinario y cuaternario.

rbol binario (A.B.). En este tipo de rbol cada nodo tiene como mximo dos tipos, esto es, el nodo puede tener dos ramas, una o ninguna, pero nunca puede tener ms de dos. En el siguiente grafo (figura 22) se muestra un ejemplo de rbol binario. Los rboles binarios son especialmente importantes en el rea de la computacin ya que por su naturaleza de tener solamente dos valores (0,1) o bien falso o verdadero, son muy tiles en aplicaciones de sistemas digitales.

rbol binario completo. Es aquel en el que cada nodo tiene dos ramas o ninguna. Un rbol binario completo con i nodos internos tiene (i+1) hojas y (2i +1) vrtices en total ( ver figura 23).

En el caso del rbol de la figura 23 los nodos internos son i=6, por lo tanto tiene: Hojas = i+1 = 6+1 = 7 Total de vrtices = 2i +1 = 2(6) + 1 = 13 Finalmente hay que destacar que los rboles completos trinarios, cuaternarios o con ms hijos se usan para organizar informacin voluminosa.

Clasificacin por altura. De acuerdo con este criterio los rboles pueden ser balanceados (cuando la diferencia de altura entre sus hojas es mximo 1) y desbalanceados (cuando la diferencia de altura entre las hojas es mayor de 1). rbol balanceado. Se dice que un rbol con una altura h esta balanceado si el nivel de cualquier hoja es h o (h-1), esto es, si hay una diferencia mxima de un nivel entre hojas. Algunos autores consideran que un rbol esta balanceado cuando la diferencia mxima entre las hojas es de 1, pero adems cada nodo padre debe tener el mismo nmero de hijos, a excepcin del que no se complete colocado en la parte baja del rbol. Es por esa razn que al balancear un rbol se debe indicar tambin el nmero de hijos que tendr cada uno de los nodos. Para balancear un rbol con una cantidad constante de hijos de los nodos padre, se llenan empezando por la raz descendiendo con un avance de izquierda a derecha. En los siguientes grafos (figura 24), se muestran ejemplos de cmo balancear un rbol trinario a binario en el inciso a), y balancear un rbol trinario en el inciso b).

Solucin: Estos rboles son desbalanceados porque la diferencia de altura entre hojas sobrepasa (h-1). Por ejemplo, en el rbol del inciso a) el nivel del vrtice c es 1 y la altura del rbol de h=4 y obviamente que 1 h-1. En el siguiente grafo (figura 25) se tienen los mismo rboles pero balanceados por lo que la diferencia mxima entre hojas es de 1.

Bosque. Un bosque es un conjunto de rboles, entre otras palabras un rbol es un bosque conectado. De un rbol se pueden obtener varios subrboles, mismo que conforman un bosque. A su vez un rbol puede considerarse como un bosque conectado, slo se debe tener en cuenta que el rbol ms pequeo est integrado por cuando menos dos nodos conectados por un arista. En la figura 26, se muestra un ejemplo de una rbol y de un grafo que no es rbol, mientras que en la figura 27 se representan dos ejemplos de bosques.

Considerando las tres partes que integran el grafo de inciso (a) se tiene que ste no es rbol porque no es conexo, pero es bosque porque se compone de varios rboles. El grafo de (b) es rbol porque es conexo y no tiene ciclos, adems de que es bosque porque es un rbol conectado.

rboles con peso Para representar caracteres en el cdigo ASCII se usan cadenas de 8 bits, sin embargo se puede aumentar la velocidad de procesamiento o bien aprovechar mejor la memoria de la computadora, mediante una compactacin de la informacin, usando cadenas de diferente longitud. Las cadenas ms pequeas pueden representar a los caracteres que se presentan con ms frecuencia, como son las vocales y ciertas consonantes como (b, c, d, f, g, m, n, p, r, s, t). Para codificar la informacin los bits se colocan en un rbol binario completo donde las cadenas de bits de los caracteres ms frecuentes estn ms cerca de la raz y los que casi no se usan estn ms lejos de ella. Esta tcnica de codificar la informacin la desarrollo David A, Huffman y se conoce como cdigo de Huffman. Para codificar o decodificar la informacin se comienza en la raz y se avanza por la rama que indica el bit, esto es, si el bit es 1 se avanza por la rama derecha, en caso contrario se toma el de la rama izquierda, que est marcado con un 0. Se van tomando ceros o unos, segn el caso hasta llegar a la hoja. Una vez que se descifra al carcter se comienza nuevamente desde la raz hasta llegar a la hoja, para encontrar otro carcter y as sucesivamente. Por ejemplo usando el siguiente rbol (figura 28).

Cul es el significado de la cadena de caracteres? 01000011101110000101010010100001011101100000101000111100 Solucin: comenzando por la raz y recogiendo cada bit hasta llegar a la hoja, se obtiene los siguientes caracteres. 0000 = u 00010 = n 00011 = s 001 = i 010 = e 0110 = m 0111 = h 100 = o 10100 = c 10101 = d 10111 = t 111 = espacio

De forma que la decodificacin del mensaje es:


010 e 00011 s 10111 t 0000 u 10101 d 001 i 010 e 00010 n 111 0110 m 0000 u 10100 c 0111 h 100 o

rboles generadores. De un rbol conexo es posible obtener un rbol (eliminando aristas redundantes) que permiten mantener conectados a todos los nodos del grafo, este rbol recibe el nombre de rbol generador. Bsqueda a lo ancho. En este procedimiento se comienza en la raz y despus se examinan todos los hijos de la misma de izquierda a derecha. Si la informacin que se busca no se encuentra en ese nivel, se procede a buscar en el siguiente nivel tambin de izquierda a derecha, y as sucesivamente hasta encontrar la informacin. Si recorri todo el rbol y no se encontr la informacin buscada, se debe emitir el mensaje correspondiente.

Por ejemplo: considrese que en el siguiente rbol (figura 29) se est buscando la letra n. primero se busca en la raz (a), despus en todos los nodos dependientes de la raz de izquierda a derecha (en este caso b, c, d) y como an no se encuentra la informacin se procede a buscar en el siguiente nivel (e, f, g, h, i, j, k) y as sucesivamente de manera que el recorrido que se debe realizar para encontrar el nodo buscado es (a, b, c, d, e, f, g, h, i, j, k, l, m, n).

Bsqueda en profundidad. En este caso se comienza en el nodo raz, despus se busca en el hijo de la izquierda y si este nodo tiene hijos se contina con el de la izquierda y as sucesivamente hasta llegar a la parte ms baja del rbol. Si este nodo ya no tiene hijo izquierdo, se contina con el hijo de la derecha (o el que se encuentra ms a la izquierda en caso de no ser un rbol binario) hasta llegar a la hoja. Si no se ha encontrado la informacin, se recorre el camino andado hasta el nodo inmediato anterior que tenga hijos y cuyos hijos no hayan sido inspeccionados, dando preferencia al de ms a la izquierda. Cuando se llega nuevamente a la hoja, se regresa hasta el nodo inmediato anterior que tenga hijos sin inspeccionar y as sucesivamente. En la bsqueda en profundidad posiblemente se regrese hasta el nodo raz (lo cual significa que se revis todo la rama dependiente del hijo izquierdo de la raz). Si la raz tiene hijos que an no han sido inspeccionado se selecciona en nodo ms cercano al hijo izquierdo y todos sus descendientes, dando preferencia a los nodos de la izquierda. Este procedimiento se lleva a cabo hasta encontrar la informacin o bien recorrer todo el rbol. Considerando el rbol anterior (figura 29), realizar el recorrido para encontrar la n, recorriendo bajo la bsqueda en profundidad, se obtendra el camino de la siguiente manera: {a, b, e, f, l, m, c, g, h, n}

Recorridos sobre un rbol. Por lo general la informacin de un rbol se coloca de acuerdo al uso que se le dar posteriormente, de tal forma que una misma informacin puede servir para diferentes usos. Existen tres manera para recorrer sobre la informacin de un rbol, y el nombre del recorrido indica el orden en que se coloca al padre en relacin a sus hijos. Los tipos de recorridos son Preorden, en orden (inorden) y postorden.

En el mtodo preorden, consiste en comenzar por el nodo padre (raz) y recorrer sobre la rama izquierda, si el nodo izquierdo tiene hijos izquierdos, pues se llega hasta la hoja, y de ah se visita la rama derecha de cada nodo izquierdo visitado. Que en resumen, se conoce como el mtodo RID y tiene el siguiente algoritmo: 1) Se inicia con la raz (R) 2) Se visita el lado izquierdo de la raz, si ste nodo tiene hijos, se considera como raz y se vista su lado izquierdo ( I ) en preorden 3) Posteriormente se visita el lado derecho, si este nodo tiene hijos se vuelve a realizar del paso 1 (en preorden) Por ejemplo considerando la siguiente figura (figura 30), como un rbol binario completo.

El mtodo Inorden, comienza con el nodo ms a la izquierda del rbol, que es una hoja, posteriormente se visita la raz de ese nodo, y por ltimo el nodo derecho de esa raz. Que en resumen se le conoce como el mtodo IRD, bajo el siguiente algoritmo. 1) Se inicia con el nodo ms a la izquierda del rbol ( I ) 2) Despus se visita la raz de ese izquierdo (R) en inorden si tiene rama derecha 3) Y por ltimo se recorre por la rama derecha de esa raz (D), en inorden. Por ejemplo volvemos a la figura 30, se tiene que.

Para el mtodo postorden, es algo similar al de inorden, por el simpel hecho de iniciar con el nodo ms a la izquierda del rbol, pero en lugar de ir a la raz de ese nodo izquierdo se va al nodo hermano de ese izquierdo, para la ltimo visitar la raz de dichos nodos. Este mtodo tambin se le conoce como el mtodo (IDR), bajo el siguiente agoritmo. 1) Se inicia con el nodo ms a la izquierda del rbol ( I ) 2) Despus se visita al nodo derecho de ese izquierdo (D), en postorden 3) Y por ltimo se visita la raz de ese nodo (R), en postorden. Si se aplica el recorrido a la figura 30, se tiene la lista:

Sea el siguiente grafo un rbol binario completo y al aplicarle los recorridos se tiene la informacin:

You might also like