Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad 4 Competencia Grafos
Unidad 4 Competencia Grafos
4.2 Grafos
Grafo No dirigido
1 4
7 9
Grafo dirigido
C E
H
D
El conjunto de vértices V = {C,D,E,F,H}
y el conjunto de arcos A = {(C,D), (D,F), (E,H), (H,E),(E,C)}
forman el grafo dirigido G = {V,A}.
Página 91
Estructura de Datos ITSP
Página 92
Estructura de Datos ITSP
Página 93
Estructura de Datos ITSP
no dirigido, puesto que una misma carretera puede ser recorrida en ambos
sentidos.
Si las aristas tienen asociada una dirección (las aristas (x,y) y (y,x) no son
equivalentes) diremos que el grafo es dirigido,, en otro caso ((x,y)=(y,x))
diremos que el grafo es no dirigido
dirigido.
Página 94
Estructura de Datos ITSP
En los grafos, como en todas las estructuras de datos, las dos operaciones
básicas son insertar y borrar. En este caso, cada una de ellas se divide en
dos, para insertar/eliminar vértices e insertar/eliminar aristas.
Insertar vértice
Página 95
Estructura de Datos ITSP
Insertar arista
Esta operación es también muy sencilla. Cuando se inserte una nueva arista
en el grafo, habrá que añadir un nuevo nodo a la lista de adyacencia (lista
que almacena los nodos a los que un vértice puede acceder mediante una
arista) del nodo origen, así si se añade la arista (A, C), se deberá incluir en la
lista de adyacencia de A el vértice C como nuevo destino.
Eliminar vértice
Eliminar arista
Mediante esta operación se borra un arco del grafo. Para llevar a cabo esta
acción es necesario eliminar de la lista de adyacencia del nodo origen el nodo
correspondiente al nodo destino.
Implementación de un grafo
a) Matriz de Adyacencia
b) Lista de Adyacencia
Página 96
Estructura de Datos ITSP
Una lista de adyacencia consiste de una lista de los vértices del grafo y para
cada vértice de una lista de sus vértices vecinos.
Lo que se hace es definir una lista enlazada para cada nodo, que contendrá
los nodos a los cuales es posible acceder. Es decir, un vértice i tendrá una
lista enlazada asociada en la que aparecerá un elemento con una referencia
al vértice j si i y j tienen una arista que los une. Obviamente, si el grafo es
no dirigido, en la lista enlazada de j aparecerá la correspondiente referencia
al vértice i. En este caso el espacio ocupado es n⋅m, muy distinto del
necesario en la matriz de adyacencia, que era de n2. La representación por
listas de adyacencia, por tanto, será más adecuada para grafos dispersos.
Página 97
Estructura de Datos ITSP
Ejemplos
Representación de matriz de adyacencia o lista de adyacencias.
Página 98
Estructura de Datos ITSP
Página 99
Estructura de Datos ITSP
Página 100