Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SISTEMAS E
INFORMTICA
Estructura de datos
INTEGRANTES:
BANCES PANTALEON ROBERTO
SANDOVAL MORENO DANI
MATRICES DE ADYACENTES
MATRICES DE ADYACENTES EN
GRAFOS DIRIGIDOS
EJEMPLO:
j
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
i
1
2
3
4
5
6
EJEMPLO 2:
i j
MATRICES DE ADYACENTES EN
GRAFOS NO DIRIGIDOS
EJEMPLO:
0
1
0
0
0
0
1
0
1
0
0
0
0
1
0
1
1
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
2
3
4
5
6
EJEMPLO 2:
MATRIZ DE CAMINOS
Camino: secuencia de vrtices (o nodos), tal que
dos vrtices consecutivos son adyacentes.
Camino de longitud 2: (A,B,D)
Camino de longitud 3: (C,B,A,B)
Camino de longitud 4: (C,B,A,B,D)
Algoritmo de Warshall
Algoritmo que es mas eficiente que calcular las
potencias de la matriz de adyacencia A y que permite
encontrar las matriz sumatoria B.
Para un grafo dirigido G con N nodos V1, V2, V3, ..,
Vm. Se halla la matriz de caminos P de la siguiente
manera:
1 Si existe un camino simple de Vi a Vj que no usa nodos,
Pk (i, j) aparte
=
de posiblemente V1, V2, V3, .., Vm.
0
En otro caso.
Algoritmo de Warshall
Warshall observo que: Pk (i, j) = 1
Cuando:
1. Existe un camino simple de Vi a Vj Pk (i, j) = 1
2. Existe un camino simple de Vi a Vk y otro camino
simple de Vk a Vi
Pk-1 (i, k) = 1 y Pk-1 (k, j) = 1
Por lo tanto los elementos de la matriz Pk se obtiene
de la siguiente manera:
Pk (i, j) = Pk (i, j) (Pk-1 (i, k) y Pk-1 (k, j))
Inicio
Repetir con i desde 1 hasta n
Repetir con j desde 1 hasta n
Si A [i, j] = 0
Entonces P (i, j)
0
Caso Contrario P (i, j) 1
Fin_Si
Fin_Repetir
Fin_Repetir
Repetir con k desde 1 hasta n
Repetir con i desde 1 hasta n
Repetir con j desde 1 hasta n
Si A [i, j] = 0 entonces
A [i, j]
A [i, k] y A [k, j]
Fin_Si
Fin_Repetir
Fin_Repetir
Fin_Repetir
Fin
K=1
K=2
K=3
K=4
Inicio
Repetir con i desde 1 hasta N
Repetir con j desde 1 hasta N
Si w (i, j) = 0
Entonces Q (i, j)
INFINITO
Caso Contrario Q (i, j)
w (i, j)
Fin_Si
Fin_Repetir
Fin_Repetir
Repetir con k desde 1 hasta N
Repetir con i desde 1 hasta N
Repetir con j desde 1 hasta N
Q (i, j)
MIN (Q (i, j), Q (i, k) + Q (k, j))
Fin_Repetir
Fin_Repetir
Fin_Repetir
Fin
Ejemplo:
7
4
U
R
2
5
Matriz de Distancias
R
GRACIAS