Grafos2010

36
Teoría de GRAFOS Adaptado y Modificado Ing. LEONARDO BERNAL ZAMORA Universidad de Boyacá

Transcript of Grafos2010

Page 1: Grafos2010

Teoría de GRAFOS

Adaptado y ModificadoIng. LEONARDO BERNAL ZAMORA

Universidad de Boyacá

Page 2: Grafos2010

CONTENIDO INTRODUCCIÓN

QUE ES UN GRAFO?

CONCEPTOS IMPORTANTES

GRAFOS DIRIGIDOS

GRAFOS NO DIRIGIDOS

METODOS DE BUSQUEDA

BIBLIOGRAFIA

GRAFOS

Page 3: Grafos2010
Page 4: Grafos2010

La Teoria de Grafos nace del análisis sobre una inquietud presentada en la isla Kueiphof en Koenigsberg (Pomerania - hoy Kaliningrado, Alemania) ya que el río que la rodea se divide en dos brazos.

Sobre los brazos estaban construidos siete puentes y para los habitantes era motivo de distracción descubrir un itinerario de manera que pudieran regresar al punto de partida, después de haber cruzado por los siete puentes pero pasando sólo una vez por cada uno de ellos.

Page 5: Grafos2010

Leonardo Euler estudió el asunto, representó las distintas zonas A, B, C y D por medio de puntos, mientras que los puentes estaban representados por líneas que unían estos puntos. A la figura la llamó grafo, a los puntos los llamó vértices y a las líneas las denominó aristas.

Estudió si una figura lineal se podía dibujar con un solo trazo, sin levantar el lápiz del papel y sin pasar dos veces por la misma arista.

Page 6: Grafos2010

Un GRAFO es una estructura de datos dinámica que permite representar diferentes tipos de relaciones entre objetos de manera gráfica.

GRAFOS

NODOSO

VERTICES

ARCOS O

ARISTAS

INFORMACIONRelaciones

Da lugar a una representación, en donde cada vértice es un punto del plano, y cada arista es una línea que une a sus dos

vértices.

Page 7: Grafos2010

GRAFOS

Bogotá

Brasilia

Lima

Santiago

Buenos Aires

Montevideo

1.500

800

900

2.000

G = (V, A)

V(G) = nodos o vértices (ciudades)

A(G) = arcos o aristas (medio de conexión)

Page 8: Grafos2010
Page 9: Grafos2010

GRAFOS

Grado de un nodoGrado de un nodo

Lazo o bucleLazo o bucle

CaminoCamino

Grafo conexoGrafo conexo

Grafo completoGrafo completo

Nodo AisladoNodo Aislado

MultigrafoMultigrafo

Page 10: Grafos2010

a b

c

d

e

f

Los nodos c y e tienen grado 4, el nodo d tiene grado 6 y los demás nodos tiene grado 5

Existe un lazo o bucle en el nodo d

Es multigrafo ya que existen dos aristas que unen los vértices a y b

Existen varios caminos que unen el nodo a y el nodo d Ej. a-b-c-d-a, a-e-d , a-d o a-c-d

El camino a-c-d-a es un camino cerrado o circuito (Cuando los dos extremos de un camino son iguales )

El camino a-c-d-a es un camino simple (vértices no se repiten), mientras que a-c-b-d-c no lo es. (Es no simple)

El camino simple a-c-d-a es también un camino cíclico

Es un Grafo conexo ya que todos los nodos tiene al menos un camino a otro nodo

Es un Grafo completo ya que todos los nodos se conectan con los demás

El nodo f es un nodo aislado

GRAFOS

Page 11: Grafos2010
Page 12: Grafos2010

GRAFOS NO DIRIGIDOS

GRAFOS

u vGRAFO

aG = (V,A)

Si a es una arista no dirigida:

(u,v) = (v,u)

NO DIRIGIDOS: son aquellos en los cuales los lados no están orientados (No son flechas). Cada lado se representa entre paréntesis, separando sus vértices por comas, y teniendo en cuenta (Vi,Vj)=(Vj,Vi).

Page 13: Grafos2010

GRAFOS

u vDIGRAFO

a

DIRIGIDOS: son aquellos en los cuales los lados están orientados (flechas). Cada lado se representa entre ángulos, separando sus vértices por comas y teniendo en cuenta <Vi ,Vj>!=<Vj ,Vi>. En grafos dirigidos, para cada lado <A,B>, A, el cual es el vértice origen, se conoce como la cola del lado y B, el cual es el vértice destino, se conoce como cabeza del lado

Conjunto de vértices = V {A,B,C,D,E}Conjunto de Arcos o Aristas = A{A-B,A-D,B-C,B-D,B-E,C-E,E-D,D-E}

Page 14: Grafos2010

Grafos Dirigidos y No Dirigidos

REPRESENTACIONREPRESENTACION

Matriz de AdyacenciaMatriz de Adyacencia Listas de AdyacenciaListas de Adyacencia

OBTENCIÓN DE CAMINOSOBTENCIÓN DE CAMINOS

Page 15: Grafos2010

Matriz de AdyacenciaGRAFOS

Booleana

Orden arbitrario a los vértices

Filas y columnas el mismo orden

Ventaja: tiempo de acceso

Desventaja: espacio de almacenamiento

Se puede determinar si existe un camino entre dos nodos

a b

c d

a

a

b

b

c

c

d

d

0

0

0

00

00

0

0

0

1 11

1

1

0

Page 16: Grafos2010

Cual es la Matriz de Adyacencia para:

Page 17: Grafos2010

Matriz de Adyacencia

Page 18: Grafos2010

Listas de AdyacenciaGRAFOS

a b

c d

Lista ordenada de vértices adyacentes a uno dado

Se puede representar mediante un arreglo

Espacio de almacenamiento NV + NA

Ventaja: espacio de almacenamiento

Desventaja: tiempo de búsqueda de las aristas

a

bc

d

b ca

d

b

arreglo

Page 19: Grafos2010

Cual es la Lista de Adyacencia para:

Page 20: Grafos2010

Listas de Adyacencia

Page 21: Grafos2010

Representación de un grafo no-dirigido con peso asignado en sus aristas

Page 22: Grafos2010

Representación de un grafo no-dirigido con peso asignado en sus aristas

Page 23: Grafos2010

Obtención de CaminosGRAFOS

Llegar desde un vértice origen a un destino recorriendo la menor distancia posible o con el menor costo.

Los algoritmos más usados para este fin son:

DIJSKSTRA

FLOYD

WARSHALL

Page 24: Grafos2010

Árbol abarcador de costo mínimo

GRAFOS

Es un árbol libre que conecta todos los vértices de V, se construye con las aristas de menor costo.

Los algoritmos más usados para este fin son:

PRIM

KRUSKAL

Page 25: Grafos2010

Recorrido de un Grafo

GRAFOS

Se caracterizan por el orden en el cual se expanden los nodos.

Los dos métodos más utilizados son:

Recorrido en anchura

Recorrido en profundidad

Page 26: Grafos2010

Grafos CAMINO SIMPLE:

Un grafo a dígrafo tiene un camino simple si partiendo de cualquier vértice podemos recorrer la estructura sin repetir ningún vértice ningún arco o arista

Page 27: Grafos2010

Grafos PLANO:

un grafo plano (o planar según referencias) es un grafo que puede ser dibujado sin que ninguna arista se interseque (una definición más formal puede ser que este grafo pueda ser "embebido" en un plano).

Fórmula de Euler

La fórmula de Euler enuncia que si un grafo conexo, plano es dibujado sobre un plano sin intersección de aristas, y siendo V el número de vértices, A el de aristas y C la cantidad de caras (regiones conectadas por aristas, incluyendo la región externa e infinita), entonces:

V − A + C = 2

6 − 7 + 3 = 2

Page 28: Grafos2010

GRAFOS EULERIANOS:Si partiendo de cualquier vértice, podemos recorre todos los arcos llegando de nuevo al vértice origen. Se pueden visitar los vértices cuantas veces sea necesario pero los arcos se pueden recorre solamente una vez.

Page 30: Grafos2010

MULTIGRAFO:

Un Multigrafo es una estructura donde dos vértices están unidos por mas de un arco o arista.

Page 32: Grafos2010

Visualización de código HTML como un grafo

Frente a una visualización estructurada en forma de árbol de etiquetas HTML, con el applet disponible en www.aharef.info/static/htmlgraph/podemos, de un vistazo, ver la complejidad de componentes y anidaciones jerárquicas de los mismos. Simplemente hay que introducir la URL hasta la página deseada y comenzará una animación que irá formando el grafo acíclico:

Page 33: Grafos2010
Page 34: Grafos2010
Page 35: Grafos2010
Page 36: Grafos2010

• Cairó - Guardati, Estructuras de Datos

• Joyanes Aguilar Luis, Estructuras de Datos (Libro de Problemas)

•http://bochica.udea.edu.co/~rflorez/ed1/grafos/grafos01.html

Bibliografía

GRAFOS