1 / 18

Grafos

Grafos. Un Grafo G es un par de conjuntos (V, E), donde V es un conjunto no vacío de elementos llamados vértices o nodos y E es un conjunto formado por pares no ordenados de elementos de V, llamados lados o aristas Se denota por G = (V, E).

oliver
Download Presentation

Grafos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Grafos

  2. Un Grafo G es un par de conjuntos (V, E), donde V es un conjunto no vacío de elementos llamados vértices o nodos y E es un conjunto formado por pares no ordenados de elementos de V, llamados lados o aristas • Se denota por G = (V, E).

  3. Cuando E está formado por pares ordenados (es decir, importa cual de los 2 vértices del par se coloca primero) de elementos de V, sus elementos son llamados arcos y se habla de grafo dirigido o dígrafo: D = (V, E).

  4. G = (V, E) • V = {Co, M, G, J, A} • E = {(Co, G), (M, G), (G, J), (G, A),(M,J)} Co M G J A

  5. Conceptos • Orden del grafo G (número de vértices). • Extremo inicial (origen, cola) y final (destino, cabeza) de un arco • Ciclo o bucle • Dos vértices son adyacentes si existe un arco que los une • Grafo conexo: Grafo en el cual es posible desde cualquier vértice llegar a cualquier otro vértice presente en el grafo (aunque para ello haya que pasar por otros vértices)

  6. Grado de un vértice (número de lados a los que está conectado el vértice) • En dígrafos se habla de: - Grado entrante (número de lados que llegan al vértice) - Grado saliente (número de lados que salen del vértice) La suma del grado entrante más el saliente da el grado total del vértice • Grafo regular (todos los vértices son del mismo grado) • Grafo completo (todos los vértices están conectados entre sí) • Grafo simple (no contiene ciclos y no hay más de 1 lado entre un par de vértices dado).

  7. • Concepto de camino o trayectoria • La longitud de un camino es el número de lados presentes en él • La distancia entre dos nodos es la longitud del camino más corto existente entre ellos

  8. Concepto de red Sea G=(X, A) un grafo de orden n. Se dice que G es una red si se cumple que: • G es conexo y no tiene ciclos • Hay definido un valor numérico no negativo sobre cada uno de los lados del grafo, que se denotará C, y que se llamará capacidad

  9. Lados no orientados • Un lado (a,b) definido por los vértices a y b es idéntico al lado (b,a)  Grafos No dirigidos Lados orientados • Un lado (a,b) definido por los vértices a y b es diferente al lado (b,a). Es decir el orden de los vértices importa en la definición del lado  Grafos Dirigidos

  10. Cuantificación de un lado: • Se pueden asignar valores a los lados representando así atributos cuantitativos como: • Intensidad de la relación • Capacidad informativa del lado • Volúmenes de flujo o tráfico a través del lado • Distancias entre nodos • Probabilidades de pasar información • Frecuencia de interacción

  11. Representación de un Grafo Matriz de adyacencia • Es una matriz de n x n (n= Número de vértices del grafo) en la cual se coloca un 1 si existe lado entre los vértices correspondientes (fila, columna). • Si el grafo es no dirigido se colocan unos tanto en la posición (i,j) como en la (j,i). • En vez de un 1 también se puede colocar el signo +.

  12. Ejemplo

  13. Puntos de corte: • Vértices que si se quitan desconectan el grafo. En el ejemplo el vértice a. Lados de corte • Un lado que si se quita desconecta el grafo. En el ejemplo el lado (d,a) c a d e

  14. Recorridos sobre grafos • Recorrer un grafo consiste en visitar (pasar) por cada uno de los nodos que son alcanzables a partir de un nodo de inicio dado • Si el grafo es conexo (y no dirigido) entonces está garantizado que todos los nodos serán visitados • El recorrido se puede hacer de 2 maneras: DFS o BFS.

  15. DFS (Depth First Search) • Literalmente “Búsqueda del Primero en Profundidad” • Consiste en: A partir de un vértice inicial dado, determinar sus vértices adyacentes*, de esos vértices adyacentes elegir uno que no haya sido visitado y a partir de allí iniciar nuevamente el recorrido DFS • Como puede verse se trata de una definición recursiva *Si el grafo es dirigido se determinan los vértices adyacentes hacia los cuales se puede viajar…

  16. Algoritmo DFS(V) Visitados[V] = 1 /* El vértice V enviado como parámetro es visitado */  vértice W adyacente a V IF Visitados[W] = 0 THEN DFS(W) END IF END  END DFS

  17. BFS (Breath First Search) • Literalmente “Búsqueda del Primero en Anchura” • La diferencia con el recorrido DFS consiste en que: en el recorrido DFS no se visitan inmediatamente todos los nodos adyacentes a un nodo, en el BFS por el contrario si se hace esto. Luego de visitar todos los adyacentes de un vértice dado, entonces se elige uno de ellos y se continúa de la misma forma.

  18. Algoritmo BFS(V) Visitados[V] = 1 /* El vértice V enviado como parámetro es visitado */ Llevar V a la Cola //Se guarda V en la Cola Mientras Cola NO vacía Z = Extraer Próximo vértice de la Cola  vértice W adyacente a Z IF Visitados[W] = 0 THEN Visitados[W]=1 Llevar W a la Cola END IF END  END Mientras END BFS

More Related