You are on page 1of 61

GRAFOS

1150673
Jair Andrs Caballero Pardo
1151028
Natalia Velsquez Gmez

QUE ES UN GRAFO?
Un grafo es una estructura de datos no lineal.
Un grafo es un conjunto, no vaco, de objetos
llamados nodos o vrtices.
Un grafo posee pares de nodos llamados
aristas o arcos, donde stas pueden ser
orientadas o no.
Un grafo se representa grficamente como un
conjunto de puntos llamados nodos y unidos
por lneas llamadas aristas.
2

DEFINICIN
Un grafo

G=(V,A)
Consiste en:
Un conjunto V de nodos (Vrtices).
Un conjunto A de arcos(Aristas).
Cada arco es un par ( a , b ), donde ( a ,
b ) V.
3

APLICACIONES
Los grafos modelan diversas soluciones reales,
Por ejemplo:
Red de vuelos y transporte.

APLICACIONES
Flujo de trafico.

APLICACIONES
Circuitos elctricos.

APLICACIONES
Redes Conceptuales.

EJEMPLIFICACIN DE UN GRAFO
Vrtice: nodos presentes en el grafo.

EJEMPLIFICACIN DE UN GRAFO
Arista: Lnea que une dos vrtices.

EJEMPLIFICACIN DE UN GRAFO
Arista Adyacente : Son aristas que convergen
en el mismo vrtice.

10

EJEMPLIFICACIN DE UN GRAFO
Lazo : Es una arista cuyos extremos inciden
sobre el mismo vrtice.

11

EJEMPLIFICACIN DE UN GRAFO
Aristas mltiples o paralelas: Son dos aristas
que tienen los vrtices en comn.

12

EJEMPLIFICACIN DE UN GRAFO
Arista Incidente: Una arista es incidente a un
vrtice si sta lo une a otro vrtice.

La arista es incidente en los vrtices A y


B.
13

EJEMPLIFICACIN DE UN GRAFO
Grado de un nodo: Es el nmero de aristas
incidentes al vrtice.

14

EJEMPLIFICACIN DE UN GRAFO
Diferentes Modelos de grafos:

15

EJEMPLIFICACIN DE UN GRAFO
Grafo:
A
}

Donde:
V={A,B,C,D,E

A = { (A,B), (A,C) ,
(A,D) D
,

(B,E) , (C,E) ,

(D,E) }
16

CLASIFICACIN
GRAFO NO DIRIGIDO : Son aquellos que sus
aristas no poseen una direccin, por lo tanto
(A,B) y (B,A) representan el mismo arco.
A

E
17

CLASIFICACIN
GRAFO NO DIRIGIDO Grafo simple

18

CLASIFICACIN
GRAFO NO DIRIGIDO - Seudografo
A

LOOP
B

D
19

CLASIFICACIN
GRAFO NO DIRIGIDO - Multigrafo
A

B
D
20

CLASIFICACIN
GRAFO DIRIGIDO : Son aquellos que sus
aristas tienen direccin definida.
A

E
21

CLASIFICACIN
GRAFO DIRIGIDO - Multigrafo Dirigido

E
22

CLASIFICACIN
GRAFO VACIO : Es un grafo que no posee
aristas que unas a sus vrtices.
D

C
A

23

CLASIFICACIN
GRAFO COMPLETO: Es un grafo donde cada
par de vrtices esta conectado con una arista.
A

H
D

E
24

REPRESENTACIN
MATRIZ DE ADYACENCIA : Una matriz de
adyacencia es aquella que muestra como est
compuesto un grafo. Se utiliza valores de 1 y
0.
1: Representa la unin de los nodos o
aristas incidentes.
0:
Representa que no hay aristas
incidentes.
25

REPRESENTACIN
MATRIZ DE
Dirigido
A

ADYACENCIA
B

Grafo

No

26

REPRESENTACIN
MATRIZ DE ADYACENCIA
Es cuadrada y simtrica.
A
La suma de cada fila o B
columna es el grado del
C
vrtice correspondiente.
D
La diagonal es nula.
E

27

REPRESENTACIN
MATRIZ DE ADYACENCIA Grafo Dirigido
A

28

REPRESENTACIN
MATRIZ DE ADYACENCIA
Es cuadrada y simtrica.
A
La suma de cada fila da
B
el grado de entrada y la
C
suma de la columna es
D
el grado de salida de
E
cada vrtice.
La diagonal es nula.

29

REPRESENTACIN
MATRIZ DE INCIDENCIA:
Lamatriz de
incidenciaes
unamatriz
binaria(sus
elementos slo pueden ser unos o ceros), que
se
utiliza
como
una
forma
de
representarrelaciones binarias.
1: Representa la unin de los nodos o aristas
incidentes.
0:
Representa que no hay aristas
incidentes.
30

REPRESENTACIN
MATRIZ DE INCIDENCIA
2

C
D

31

REPRESENTACIN
MATRIZ DE INCIDENCIA:
A

1 1
Las columnas de la matriz
1
representan las aristas2 del
grafo.
3 0
Las filas representan a 4los 0
distintos nodos.
5 0

32

REPRESENTACIN
LISTA DE ADYACENCIA:
Es una representacin de todas lasaristaso
arcos de ungrafomediante unalista.
Si el grafo es no dirigido, cada entrada es
unconjunto de dosvrticesconteniendo los
dos extremos de la arista correspondiente.
Si el grafo es dirigido, cada entrada es
unaduplade dos nodos, uno denotando el
nodo fuente y el otro denotando el nodo
destino del arco correspondiente.
33

REPRESENTACIN
LISTA DE ADYACENCIA Grafo No Dirigido
A

B
C

E
34

REPRESENTACIN
LISTA DE ADYACENCIA Grafo Dirigido
A

B
F

E
35

RECORRIDOS
Recorrer un grafo significa tratar de
alcanzar todos los nodos que estn
relacionados con uno el cual es el nodo de
salida.
Existen dos tcnicas para recorrer un grafo:
Recorrido por Anchura.
Recorrido por profundidad.
36

RECORRIDOS
CAMINO :

Camino(A,E) : A B C - D E.
Longitud : 5
37

RECORRIDOS
RECORRIDO POR ANCHURA:
A

Recorrido :
A-

G
38

RECORRIDOS
RECORRIDO POR ANCHURA:
A

Recorrido :
B

A B E D C
F

G
39

RECORRIDOS
RECORRIDO POR ANCHURA:
A

Recorrido :
B

A B E D C F
-HGI

G
40

RECORRIDOS
RECORRIDO POR PROFUNDIDAD:
1

A
H

J
G

Recorrido : A41

RECORRIDOS
RECORRIDO POR PROFUNDIDAD:
2

5
4

J
G

Recorrido: A- B- C- D- E42

RECORRIDOS
RECORRIDO POR PROFUNDIDAD:
A

H
6

1
0

J
7

- Recorrido: A- B- C- D- E- F- G- I- J- H
43

ARBOL DE COBERTURA MINIMA


CONEXIDAD : Es conexo un grafo en que
todos sus vrtices tienen una conexin que los
comunica entre si.
-Grafo Conexo
- Grafo no
Conexo
B

C
F

A
E

F
44

ARBOL DE COBERTURA MINIMA


Un rbol es un grafo conexo sin ciclos.
A
D

45

ARBOL DE COBERTURA MINIMA


Dado un Grafo G(V,A), un rbol de cobertura
mnimo es el rbol que conecta todos los
vrtices del grafo con n-1 arcos (n siendo
el numero de vrtices y m el numero de
arcos) pero con el menor
costo total.
6
A

1
0

1
5
8

2
0

1
0

1
5

46

ARBOL DE COBERTURA MINIMA

1
0

A
8

1
0

47

ARBOL DE COBERTURA MINIMA


Los dos algoritmos ms importantes para
determinar cobertura mnima son:
Algoritmo de Kruskal (1956).
Algoritmo de Prim's(1957).

48

ARBOL DE COBERTURA MINIMA


Algoritmo
de
Kruskal
(1956):
es
unalgoritmode lateora
de grafospara
encontrar un rbol de cobertura mnimaen un
grafo conexo y ponderado. Es decir, busca un
subconjunto de aristas que, formando un
rbol, incluyen todos los vrtices y donde el
valor total de todas las aristas del rbol es el
mnimo.

49

ARBOL DE COBERTURA MINIMA

50

ARBOL DE COBERTURA MINIMA


Algoritmo de Prim(1957) : es unalgoritmo
perteneciente a lateora de grafospara
encontrar unrbol de cobertura mnimaen
ungrafo
conexo,nodirigido
y
cuyasaristasestn etiquetadas. Encuentra un
subconjunto
dearistasque
forman
un
rbolcon todos losvrtices, donde el peso
total de todas las aristasen el rbol es el
mnimo posible. Si el grafo no es conexo,
entonces el algoritmo encontrar elrbol de
cobertura
mnimapara
uno
de
los
51
componentes conexos que forman dicho grafo

ARBOL DE COBERTURA MINIMA

52

ALGORITMO DE DIJKSTRA
Algoritmo
de
Dijkstra:
Tambin
llamadoalgoritmo de caminos mnimos, es
unalgoritmopara la determinacin delcamino
mas cortodado unvrticeorigen al resto de
vrtices en ungrafo con pesos en cadaarista.
Su nombre se refiere aEdsger Dijkstra, quien
lo describi por primera vez en 1959.

11/12/16

53

ALGORITMO DE DIJKSTRA
9

2
1
4

3
9

7
11/12/16

1
0

1
1

1
5
54

ALGORITMO DE DIJKSTRA
9

2
1
4

3
9

7
11/12/16

1
0

1
1

1
5
55

ALGORITMO DE DIJKSTRA
1
4 6

9
2

1
4

9
3

1
1

1
0
7

11/12/16

1
5
7
56

ALGORITMO DE DIJKSTRA
1
4 6

9
2

1
4

9
3

1
1

1
0
7

11/12/16

1
5

2
2

7
57

ALGORITMO DE DIJKSTRA
1
1 6

9
2

1
4

9
3

1
1

1
0
7

11/12/16

1
5

2
0

7
58

ALGORITMO DE DIJKSTRA
1
1 6

9
2

1
4

1
1

1
0

2
0

9
3

7
11/12/16

1
5

2
0

7
59

ALGORITMO DE DIJKSTRA
1
1 6

9
2

1
4

1
1

1
0

2
0

9
3

7
11/12/16

1
5

2
6

7
60

GRACIAS

61