Está en la página 1de 13

Grafos

Introducción

 Los grafos son estructuras de datos


 Representan relaciones entre objetos
 Relaciones arbitrarias, es decir
 No jerárquicas
 No hay restricciones para formar un grafo
 Puede haber varias aristas entre dos vértices
Definicion

 Los grafos no son más que la versión general de un árbol, es decir, cualquier
nodo de un grafo puede apuntar a cualquier otro nodo de éste (incluso a él
mismo).
 Este tipo de estructuras de datos tienen una característica que lo diferencia
de las estructuras que hemos visto hasta ahora: los grafos se usan para
almacenar datos que están relacionados de alguna manera (relaciones de
parentesco, puestos de trabajo, ...); por esta razón se puede decir que los
grafos representan la estructura real de un problema.
Terminología de grafos:

 Vértice : Nodo.
 Enlace : Conexión entre dos vértices (nodos).
 Adyacencia : Se dice que dos vértices son adyacentes si entre ellos hay un
 enlace directo.
 Vecindad : Conjunto de vértices adyacentes a otro.
 Camino : Conjunto de vértices que hay que recorrer para llegar desde un nodo
origen hasta un nodo destino.
 Grafo conectado : Aquél que tiene camino directo entre todos los nodos.
 Grafo dirigido : Aquél cuyos enlaces son unidireccionales e indican hacia donde
están dirigidos.
 Gafo con pesos : Aquél cuyos enlaces tienen asociado un valor.
Explicación

 Un grafo G = (V,A) 1 4
 V, el conjunto de vértices o nodos
5
 Representan los objetos
 A, el conjunto de arcos
7 9
 Representan las relaciones

V = {1, 4, 5, 7, 9}
A= {(1,4), (5,1), (7,9), (7,5), (4,9), (4,1), (1,5), (9,7), (5, 7), (9,4)}
Tipos de Grafos

 Grafos dirigidos  Grafos no dirigidos


 Si los pares de nodos tienen un  Si los pares de nodos no tienen un
sentido. sentido
 Existe un camino preestablecido

1 4
C E
5
F

D H 7 9

V = {C, D, E, F, H}
A= {(C,D), (D,F), (E,H), (H,E), (E,C)}
Conectividad

 Grafo No Dirigido  Grafo Dirigido


 Conexo (enlazado) 5
 Existe un camino entre cualquier  Fuertemente Conexo
par de nodos 4 8
 Existe un camino entre cualquier
par de nodos
1 4
6
 Conexo (débilmente enlazado)
5  Existe una cadena entre cualquier A
par de nodos

9 H B
7

D
Grados de un nodo
C E
 En Grafo No Dirigido
◦ Grado(V)
 Numero de aristas que contiene a V F
D H
Grado(Guayaquil) = 3
9 Gradoent(D) = 1 y Gradsal(D) = 1
Guayaquil Quito
8
7
 En Grafo Dirigido
Ambato  Grado de entrada, Graden(V)
5
Cuenca
7  Numero de arcos que llegan a V

5
 Grado de Salida, Gradsal(V)
 Numero de arcos que salen de V
Riobamba
A B C

Caminos
D E F
 Definición
◦ Un camino P en un grafo G,
desde V0 a Vn Camino A y A
◦ Es la secuencia de n+1 vértices P = {A, E, B, F, A}
◦ Tal que (Vi, Vi+1)  A para 0 i 
n
◦ Trayectoria de un punto a otro 4 7
10

11
6 9
 Longitud de camino
 El número de arcos que lo Camino entre 4 y 7
forman P = {4, 6, 9, 7}

Longitud: 3
Caminos  Un trayectoria o recorrido es
una secuencia de nodos
w1,w2,…,wn tal que (wi,wi+1) 
E E.
210

M  Un recorrido es una lista


450 ordenada de nodos.
60 190

B ◦ Longitud: número de ramas en


200 el recorrido.
130
L ◦ Costo o peso: suma de los
P pesos de las ramas del
recorrido
◦ Ciclo: es un recorrido que
vuelve al nodo de
Recorridos en Grafos
 Recorrer un grafo significa visitar todos sus
nodos partiendo de un nodo de salida.
 Es muy importante asegurarnos de no ir en
círculos (i.e., caer en un ciclo).
 Dos tipos básicos de recorridos:
◦ En anchura: recorrer el grafo en niveles (de
los nodos más cercanos a los más lejanos).
◦ En profundidad: buscar caminos que parten desde
el nodo de salida hasta que ya no es posible
avanzar más, después volver atrás en busca de
caminos alternativos inexplorados.
EN PROFUNDIDAD EN ANCHURA

A-B-E-I-F-C-G-J-K-H-D A-B-C-D-E-G-H-I-J-K-F
a b c

d e f

En anchura En profundidad
1 2 4 1 2 3
a b c
a b c

d e f
5 6 d e f
3 5 4 6

También podría gustarte