Vous êtes sur la page 1sur 21

UNMSM-FISI ED Grafos1 G. A. Salinas A.

1
ESTRUCTURA DE DATOS
GRAFOS
Semana 14
G. A. Salinas A.
UNMSM-FISI ED Grafos1 G. A. Salinas A. 2
ESTRUCTURA DE DATOS
1. Introduccin
2. Definicin, Tipos de grafos
3. Terminologa
4. Bibliografa
UNMSM-FISI ED Grafos1 G. A. Salinas A. 3
1. Introduccin
Las estructuras de datos no lineales se caracterizan por no
existir una relacin de adyacencia, entre sus elementos, es
decir, un elemento puede estar relacionado con cero, uno o ms
elementos.
La estructura no lineal de datos ms general es el grafo
donde sus nodos pueden relacionarse de cualquier
manera sin
UNMSM-FISI ED Grafos1 G. A. Salinas A. 4
1. Introduccin
Para modelar diversas situaciones tales como:
Sistemas de aeropuertos, flujo de trfico.
Responder a preguntas como: Qu tiempo es ms corto?,
Cmo es ms barato?, o Qu camino es ms corto?.
Realizar planificacin de actividades, tareas del computador,
planificar operaciones en lenguaje de mquinas para minimizar
tiempo de ejecucin.Qu tarea debo hacer primero?.
Para representar circuitos elctricos,de agua y desage etc... ,
y preguntar, estn todas las componentes conectadas.

UNMSM-FISI ED Grafos1 G. A. Salinas A. 5
1. Introduccin. Ejemplos.
Ejemplo: Grafo asociado a un dibujo de lneas.
1
4
2
7
3
6
5
b
e
a
d
c
Modelo 1
Modelo 2
Escena
UNMSM-FISI ED Grafos1 G. A. Salinas A. 6
1. Ejemplos de grafos.
Ejemplo: Grafo de planificacin de
tareas.
Licencia
de obras
6
Aplanar
terreno
4
Comprar
Ladrillos
2
Cincelar
piedras
Hacer
zanjas
3
Colocar
ladrillos
9
Pintar
Edificio
11
8
Colocar
puertas
?
UNMSM-FISI ED Grafos1 G. A. Salinas A. 7
2. Definicin
Un grafo G se define como un par de conjuntos finitos (V, A).
Donde V es un conjunto de vertices y A V V es un conjunto de
pares de vrtices denominados aristas:
V = {v
1
, v
2
, ... ,v
M
) es el conjunto de nodos o vrtices
A = {a
1
, a
2
, ..., a
K
} es el conjunto de aristas y
La funcin f : R indica los pares de nodos que estn
relacionados.
UNMSM-FISI ED Grafos1 G. A. Salinas A. 8
Un grafo G agrupa entes fsicos o conceptuales, es el par G=
(V, A), donde V es un conjunto no vaco de vrtices o nodos
(entes) y A es un conjunto de aristas o arcos (relaciones).
Cada arista es un par (u, v), donde u, v V.
2. Definiciones.
u
v
UNMSM-FISI ED Grafos1 G. A. Salinas A. 9
Tipos de grafos
Cada arista es un par (u, v), donde u, v V.
Grafo no dirigido.
Las aristas no estn ordenadas:
(u, v) = (v, u)
Ambos son adyacentes entre si

Grafos dirigidos (o digrafos).
Las aristas son pares ordenados:
<u, v> <v, u>

<u, v> u es el origen. v el destino y v es adyacente a u.

2. Definiciones.
u
v
u
v
UNMSM-FISI ED Grafos1 G. A. Salinas A. 10
3. Tipos de Grafos
1. GRAFOS NO DIRIGIDOS. En estos grafos, las aristas que
comunican dos nodos tienen dos sentidos. Si una arista va de v
i
a, v
j

la misma arista va de v
j
a v
i
. Se expresa grficamente por lneas.
La representacin grfica de un grafo se define con un crculo para
los nodos y las relaciones con lneas o flechas segn sea un grafo no
dirigido o un digrafo, respectivamente.
B
A
D
C E
F
G
UNMSM-FISI ED Grafos1 G. A. Salinas A. 11
3. Tipos de Grafos
1. GRAFOS NO DIRIGIDOS. Elementos.- Los elementos de un
grafo no dirigido G = {V, A} son el conjunto de nodos o vrtices , el
conjunto de lneas A o aristas y la funcin f : A V x V de pares no
ordenados que indican que esos nodos estn unidos en ambas
direcciones.
B
A
D
C E
F
G
UNMSM-FISI ED Grafos1 G. A. Salinas A. 12
3. Tipos de Grafos
2. GRAFOS DIRIGIDOS. En estos grafos, las aristas que
comunican dos nodos tienen un nico sentido, una arista puede ir de
v
i
a, v
j
, pero no de v
j
a v
i
. Se expresa grficamente con flechas que
indican el sentido de la relacin entre cada par de nodos.
B
A
D
C E
F
G
UNMSM-FISI ED Grafos1 G. A. Salinas A. 13
3. Tipos de Grafos
2. GRAFOS DIRIGIDOS. Elementos.-Los elementos de un
digrafo D = {V, A} son el conjunto de nodos V, el conjunto de arcos
A y la funcin f : A V x V de pares ordenados de nodos que
indican de que nodo sale el arco y a que nodo llega ese arco.

B
A
D
C E
F
G
UNMSM-FISI ED Grafos1 G. A. Salinas A. 14
3. Tipos de Grafos
3. GRAFOS PONDERADO.
A cada arista del grafo se le asigna un peso o un valor.


B
A
D
C E
3
5
2
6
UNMSM-FISI ED Grafos1 G. A. Salinas A. 15
3. Terminologa
Nodos adyacentes a un nodo v: todos los nodos unidos a v
mediante una arista.
En grafos dirigidos:
Nodos adyacentes a v: todos los w con <v, w> A.
Nodos adyacentes de u: todos los u con <u, v> A.

Un grafo est etiquetado si cada arista tiene asociada una
etiqueta o valor de cierto tipo.
Grafo con pesos: grafo etiquetado con valores numricos.
Grafo etiquetado: G= (V, A, W), con W: A TipoEtiq

UNMSM-FISI ED Grafos1 G. A. Salinas A. 16
3. Terminologa
Camino de un vrtice w
1
a w
q
: es una secuencia w
1
, w
2
, ...,
w
q
V, tal que todas las aristas (w
1
, w
2
), (w
2
, w
3
), ..., (w
q-1
,
w
q
) A.
Longitud de un camino: nmero de aristas del camino es
igual al numero de nodos -1.
Camino simple: aquel en el que todos los vrtices son
distintos (excepto el primero y el ltimo que pueden ser
iguales).
Ciclo: es un camino en el cual el primer y el ltimo vrtice
son iguales. En grafos no dirigidos las aristas deben ser
diferentes.
Se llama ciclo simple si el camino es simple.
UNMSM-FISI ED Grafos1 G. A. Salinas A. 17
3. Terminologa
Un subgrafo de G=(V, A) es un grafo G=(V, A) tal que
VV y AA.
Dados dos vrtices u, v se dice que estn conectados si
existe un camino de u a v.
Un grafo es conexo (o conectado) si hay un camino entre
cualquier par de vrtices.
Si es un grafo dirigido, se llama fuertemente conexo.
Un componente (fuertemente) conexo de un grafo G es un
subgrafo maximal (fuertemente) conexo.
UNMSM-FISI ED Grafos1 G. A. Salinas A. 18
3. Terminologa
Un grafo es completo si existe una arista entre cualquier par
de vrtices.
Para n nodos, cuntas aristas tendr un grafo completo
(dirigido o no dirigido)?

Grado de un vrtice v: nmero de arcos que inciden en l.
Para grafos dirigidos:
Grado de entrada de v: numero de aristas con <x, v>
Grado de salida de v: numero de aristas con <v, x>
UNMSM-FISI ED Grafos1 G. A. Salinas A. 19
3. Terminologa
El TAD Grafo tiene las sguientes operaciones:
Crear un grafo vaco (o con n vrtices).
Insertar un vrtice o una arista.
Eliminar un vrtice o arista.
Consultar si existe una arista (obtener la etiqueta).
Determinar si un vrtice pertenece a un grafo.
Determinar si una arista pertenece a un grafo.
Determinar si un grafo es vaco

UNMSM-FISI ED Grafos1 G. A. Salinas A. 20
3. Terminologa
El TAD Grafo
Objeto abstracto.
Invariante
Operaciones:
//Constructores:
crearGrafo -------- Grafo
//Analizadores:
buscarVertice Grafo x Vertice Vrtice
BuscarArista Grafo x Arista Arista
//Modificadoras:
insertarVerttice Grafo x Vertice Grafo
insertarArista Grafo x Arista Grafo
eliminaVertice Grafo x Vertice Grafo
eliminarArista Grafo x Arista Grafo


UNMSM-FISI ED Grafos1 G. A. Salinas A. 21
Bibliografa
CORTEZ VASQUEZ, Augusto P.
2003 ESTRUCTURA DE DATOS Y ALGORITMOS,
Estructura no Lineales.UNMSM-Fisi
TENENBAUM M; Aaron
1997 ESTRUCTURA DE DATOS CON C Y C++.
Prentice-Hall, 2da. Ed. Mexico D. F.672p

Vous aimerez peut-être aussi