Professional Documents
Culture Documents
GRAFOS Y DIGRAFOS
Estructuras de Datos
DIGRAFOS
jueves, 11 de febrero de 16 M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la Computacin - BUAP
APLICACIONES
Las aplicaciones de los grafos dirigidos son muchas y variadas.
Como ejemplos:
Analizar circuitos elctricos.
Desarrollar planificaciones de trabajo.
OPERACIONES ADICIONALES
Operaciones como las siguientes son importantes en algunas
aplicaciones:
Recorrido
Determinar si un vrtice se puede alcanzar desde otro vrtice.
Determinar el nmero de caminos de un vrtice a otro.
Encontrar el camino ms corto entre dos vrtices.
jueves, 11 de febrero de 16 M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la Computacin - BUAP
DIGRAFOS - REPRESENTACIN
Existen varias formas de implementar un grafo dirigido utilizando
estructuras de datos.
Una de las ms utilizadas es la matriz de adyacencia del digrafo.
DIGRAFOS - REPRESENTACIN
La matriz de adyacencia para el digrafo:
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
DIGRAFOS - REPRESENTACIN
Para un digrafo valorado o ponderado en el que se asocia un
cierto coste o peso a cada arista, en la matriz de adyacencia se
utiliza el coste de la arista desde el vrtice i al vrtice j en lugar
de 1 o 0.
DIGRAFOS
Grado de entrada o salida de un vrtice: Es el nmero de
aristas que llegan o salen de ese vrtice, respectivamente.
GRAFOS
Un grafo, a veces llamado grafo no dirigido, es como un
digrafo con la salvedad de que las aristas no tienen asociado
un sentido.
Adems, tampoco se permiten aristas que unan un vrtice
consigo mismo.
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
APLICACIONES
Son tiles para modelar circuitos elctricos, estructuras de
compuestos qumicos, sistemas de comunicacin y redes en
las que no existe una direccin asociada con los enlaces.
OPERACIONES BSICAS
Construir un grafo vaco
Comprobar si es el grafo vaco
Insertar un nuevo vrtice
Insertar una arista entre dos vrtices existentes
Borrar un vrtice y todas las aristas de las que forme parte.
Borrar una arista entre dos vrtices.
Buscar un valor en un vrtice, comenzando un vrtice dado.
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
GRAFOS - REPRESENTACIN
Los grafos se pueden representar mediante matrices de
adyacencia:.
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
GRAFOS - REPRESENTACIN
Tambin se pueden representar
mediante listas de adyacencia:
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
GRAFO - CONECTIVIDAD
Una propiedad importante de un grafo es si es conexo, es
decir si desde cualquier vrtice existe un camino a cualquier
otro vrtice.
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
GRAFO - COMPLETITUD
Un grafo completo es un grafo simple donde cada par de
nodos est conectado por una arista.
ALGORITMO DE DIJKSTRA
Este algoritmo encuentra la longitud de una ruta ms corta
del vrtice a al vrtice z en un grafo ponderado conexo.
ALGORITMO DE DIJKSTRA
Entrada: Un grafo conexo ponderado, en la que todos los
pesos son positivos, vrtices inicio (a) y final (z).
ALGORITMO DE DIJKSTRA
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
CUESTIONARIO
1. Qu caractersticas diferencan un grafo dirigido de un rbol?
2. En un digrafo, puede no ser posible ir de un vrtice a otro. (V/F)
3. Para representar un grafo podemos usar una matriz de
_____________ o una ________________ ____________?
4. Dibuja la matriz de adyacencia de los siguientes grafos dirigidos:
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
CUESTIONARIO
5. Dibuja el grafo dirigido representado por la siguiente lista adyacente.
M.C. Mara Antonia Ruz Daz - Facultad de Ciencias de la
jueves, 11 de febrero de 16
Computacin - BUAP
CUESTIONARIO
Calcular el camino ms corto:
REFERENCIAS
TADs, Estructuras de datos y resolucin de problemas con C
++, Larry R. Nyho, 2 Ed., Prentice Hall.
Matemticas discretas, Richard Johnsonbaugh, 6 Ed.,
Prentice Hall.