Está en la página 1de 25

Programa Nacional de Formación

en Ingeniería en Informática

U.C: Matemáticas Aplicadas


Módulo: Matemáticas Discretas
Unidad: Grafos

Grafos

Dr. Ing. Iraides Rodríguez


Grafo Dirigido: Grafo dirigido G, es un conjunto de nodos N, un conjunto de
arcos A y una función f que va del conjunto A al conjunto NxN, donde NxN
representa el producto cartesiano del conjunto N consigo Mismo.

Elementos de una Grafo Dirigido: Arcos, Nodos y una función f del


conjunto A al conjunto NxN.

Los nodos se denotarán con los símbolos n1,n2,n3,…… y los arcos con los
símbolos a1,a2,a3,…. Como: f: ANxN es una función, un arco cualquiera ai
une un único nodo Ni a un único nodo Nj , pero no al contrario.

Ejemplo: Sea un grafo G1 definido como sigue:

N={n1, n2, n3, n4}


A={a1, a2, a3, a4, a5, a6}
Y la función f definida:
f(a1)= (n1,n2) f(a4)=(n3,n4)
f(a2)= (n2,n3) f(a5)=(n4,n1)
f(a3)= (n3,n2) f(a6)=(n3,n4)
Dr. Ing. Iraides Rodríguez
n1 a1 n2

a5 a3 a2
a4 n3
n4
a6

Realizar Ejemplo: Sea un grafo G2 definido como sigue:

N={n1, n2, n3}


A={a1, a2, a3}
Y la función f definida:
f(a1)= (n1,n2)
f(a2)= (n2,n3)
f(a3)= (n1,n3)

Dr. Ing. Iraides Rodríguez


Multiplicidad: es el nùmero de arcos K que unen el par ordenado de nodos
(ni, nj) en un grafo G. donde K≥0.

Grafo Dirigido Simple: Un grafo G es simple si cada par (ni,nj) en NxN tiene
como máximo multiplicidad 1. y es Conexo si existe al menos un arco ai
entre cada par (ni,nj) en NxN.
Multiplicidad de todos los pares
n1 a1 n2
Multiplicidad (n1,n2) = 1 Multiplicidad (n1,n1) = 0
a5 a3 a2 Multiplicidad (n2,n3) = 1 Multiplicidad (n2,n2) = 0
a4 n3 Multiplicidad (n3,n4) = 2 Multiplicidad (n3,n3) = 0
n4
a6 Multiplicidad (n4,n1) = 1 Multiplicidad (n4,n4) = 0
Multiplicidad (n2,n1) = 0 Multiplicidad (n1,n3) = 0
Multiplicidad (n3,n2) = 1 Multiplicidad (n3,n1) = 0
Multiplicidad (n4,n3) = 0 Multiplicidad (n2,n4) = 0
Multiplicidad (n1,n4) = 0 Multiplicidad (n4,n2) = 0
Dr. Ing. Iraides Rodríguez
Matriz de Conexión del grafo G: Es una matriz de 2 dimensiones de orden N x N
perteneciente al grafo G que cuyos elementos representan la multiplicidad del par
(ni, nj) .
n1 n2 n3 n4
n1 a1 n2 n1 0 1 0 0
n2 0 0 1 0
a5 a3 a2
Mi,j = n3 0 1 0 2
a4 n3 n4 1 0 0 0
n4
a6

Sea un grafo G, dado un arco ai є A, tal que f(ai) = (ni, nj), los nodos ni,
nj se denominan origen y fin de ai respectivamente

Ejemplo:
f(a1)= (n1,n3) == n1 es origen de a1 y n3 es fin de a1

Dr. Ing. Iraides Rodríguez


Camino: Se define como un camino C del grafo G a la secuencia de
arcos (a1, a2, a3,……), tal que para cada par (ai, ai+1) de arcos
consecutivos en C, el fin de ai coincide con el origen de ai+1.

Camino Simple: Es el camino que NO recorre el mismo arco 2 veces


o mas.

Camino Elemental: Es el camino donde NO se visita un mismo nodo


mas de una vez.

Circuito: Es un camino finito donde el origen del primer arco coincide


con el fin del último arco. Un Circuito es simple si a la vez es un
camino simple.

Orden de un Camino: Es el número de arcos que componen un


camino. Y un circuito de orden 1 es un Lazo.

Dr. Ing. Iraides Rodríguez


Ejemplo: Dado el grafo G3

N = { n1, n2, n3, n4, n5 }

A = { a1, a2, a3, a4, a5, a6, a7, a8 }

Y la función f definida así:


f(a1): (n1, n2) f(a3): (n3, n2) f(a5): (n3, n3) f(a7): (n4, n5)
f(a2): (n1, n3) f(a4): (n2, n3) f(a6): (n3, n4) f(a8): (n5, n1)

n1 a1 n2
a4

a3 a5
a2
a8 n3
¿Es G3 un Grafo Simple?
Hallar un camino Simple C1
a6
n5 a7 n4 ¿Es C1 Elemental?
Hallar un circuito en G3
Es Simple el circuito hallado?
Dr. Ing. Iraides Rodríguez Hallar un lazo
n1 a1 n2 Grafo simple?
a4
n1 n2 n3 n4 n5
a3 a5 n1 0 1 1 0 0
a2
a8 n3
n2 0 0 1 0 0
Mi,j = n3 0 1 1 1 0
a6
n5 a7 n4 n4 0 0 0 0 1
n5 1 0 0 0 0
C1={ a1, a4, a5, a6 } Es camino simple?
SI es un camino simple NO pasa 2 veces por un mismo arco SI es Grafo Simple
Porque Máxima
Es C1 un camino elemental?
Multiplicidad es 1
NO porque toca 2 veces el nodo n3
Un camino elemental es: C2: { a1, a4, a6, a7 }

Un circuito en G3 es: C3 = { a1, a4, a5, a6,a7, a8 }


Es C3 un circuito simple?
SI, porque es a su vez un camino simple
Hay algún lazo?
SI, C4 = { a5 }
Dr. Ing. Iraides Rodríguez
Ejercicio: Se tienen 6 ciudades, las cuales estan unidas por vías como lo
indica el grafo G4 de la figura dada. Los Nodos n1,n2,……..,n6 son las
ciudades y los arcos a1,a2,…….,a7 son las vías.

n1 n2 n3
a2 a3 a6
a1 a4 a7
a5

n4 n5 n6

-Hallar un camino de orden 3


- Hallar un camino elemental
- Hallar un camino simple HASTA AQUÍ:
- Hallar un circuito
-Existe algún Lazo?

Nodo Accesible: Un nodo nj es accesible desde otro nodo ni en


un grafo G si ni=nj o si existe un camino desde ni hasta nj
Dr. Ing. Iraides Rodríguez
n1 a1 n2
a4

a3 a5 En este grafo todos los nodos son


a2
a8 n3 accesibles desde cualquiera de
los nodos restantes.
a6
n5 a7 n4

n1 es accesible desde n2, n3, n4 y n5

Nodo sucesor: en un grafo G un nodo ni es sucesor de un nodo nj si existe un


camino (no necesariamente un arco) que va desde nj hasta ni, y al mismo tiempo
nj es predecesor de ni.
nk
nl

ni es sucesor de nj de nl y de nk
nj ni
nj es predecesor de ni, nk y nl
Dr. Ing. Iraides Rodríguez
Subgrafo: Se denomina subgrafo G1 del grafo G a aquel grafo que esta
constituido por un subconjunto N1 del conjunto N de nodos de G y un
subconjunto A1 del conjunto A de los arcos de G que conectan los nodos en
N1
Ejemplo:
n2 n2
a1 a3 a3

n1 a2 n3 a2 n3

a4 a4
GRAFO n4 n4 SUBGRAFO

Se denomina Grado de incidencia positivo de un nodo ni al número


de arcos que tienen como origen a ni y Grado de incidencia negativa
de un nodo nj al número de arcos que tienen a nj como fin

Dr. Ing. Iraides Rodríguez


n2 - Grado de incidencia positivo de n1 es 1 y
a1 a3 grado de incidencia negativo es 0
- Grado de incidencia positivo de n2 es 1 y
grado de incidencia negativo es 2
n1 a2 n3
- Grado de incidencia positivo de n3 es 1 y
grado de incidencia negativo es 1
a4
GRAFO n4

Adyacencia: nj es adyacente a ni en un grafo G, si existe un par de nodos


(ni,nj) que estan unidos por un arco cualquiera ak.

n2
a1 a3
¿Es el nodo n1 adyacente a n3?
a2
n1 n3 NO porque no existe un arco que: una, a
GRAFO estos dos nodos n1 y n3
Pero n1 si es adyacente a n2 ya que si
existe un arco que los une a2
Dr. Ing. Iraides Rodríguez
Dr. Ing. Iraides Rodríguez
Grafo NO Dirigido: Un grafo es NO dirigido si el sentido de sus arcos no
es relevante.

Un grafo no dirigido esta conformado por un conjunto N de nodos, un


conjunto L de líneas y una función f que va del conjunto L al conjunto de
pares no ordenados <μ, ν> donde μ y ν pertenecen a N.

Conceptos relacionados a grafo no dirigido.

Cadena: Es la secuencia de Líneas (l1, L2,…….) tal que el fin de li coincide


con el origen de li+1.

Cadena Simple: es aquella en la cual ninguna línea aparece mas de una


vez.
Cadena Elemental: Es aquella que no pasa mas de una vez por un
mismo nodo.
Ciclo: Es una cadena finita en la cual el nodo inicial de la cadena (no)
coincide con el nodo terminal de la cadena (nn) y ningún nodo aparece
mas de una vez.
Si un ciclo es a su vez una cadena simple, se llama entonces Ciclo
Simple, el grado de incidencia de un nodo es el número de líneas que
tocan el nodo. Dr. Ing. Iraides Rodríguez
Dr. Ing. Iraides Rodríguez
Ejemplo: Sea el grafo G10 definido por:

N={n1, n2, n3, n4}


L={l1, l2, l3, l4, l5}
Y la función f definida:
f(l1)= (n1,n2) f(l4)= (n3,n4)
f(l2)= (n2,n3) f(l5)= (n4,n1)
f(l3)= (n3,n3)

n1 l1 Es posible hallar una cadena?


n2
Si, C={ l1, l2, l3, l4 }. Es una
l2
l3 cadena simple?
l5 Si porque no se repite ninguna
n3
línea
Es Una cadena elemental?
l4
n4 NO porque el nodo n3 es
GRAFO
visitado 2 veces
La cadena {l1,l2,l3} es elemental
Hallar un ciclo?
{l1,l2,l4,l5} nodo inicial igual al
Si porque es una cadena nodo final
simple Es un ciclo simple?
SubGrafo NO Dirigido: Se denomina subgrafo no dirigido G1 a aquel
grafo que esta constituido por un subconjunto N1 del conjunto N de nodos
de G y un subconjunto L1 del conjunto L de líneas de G que conectan los
nodos en N1.

n2 n2

n1 l1 n1 l1
l2

n3
l5 l5
l4 l3
SUBGRAFO
GRAFO n4 n4
n2

Dr. Ing. Iraides Rodríguez


Representación de
Estructuras de Datos No
Lineales

Dr. Ing. Iraides Rodríguez


Método de la Matriz de Adyacencia
Sea G un grafo de n nodos, con n>1, la matriz de adyacencia de G es un
arreglo de dos dimensiones de orden (n x n), que denotaremos por I y que
tiene las siguientes propiedades:

1 Si existe un arco o una línea que vaya desde el nodo ni al nodo nj


I(i,j) =
0 En el caso contrario

Representación de G1
Ejemplo:
n1 a1 n3
Sea G1 el grafo formado por: a3
a4
N= { n1, n2, n3, n4, n5 } a5
A= { a1, a2, a3, a4, a5 } n5

Y la función f dada por: n4 a2 n2

f(a1)=(n1,n3) f(a4)=(n1,n2)
f(a2)=(n2,n4) f(a5)=(n1,n4)
f(a3)=(n3,n5)
Dr. Ing. Iraides Rodríguez
La matriz de adyacencia I del grafo G1 es:

n1 n2 n3 n4 n5
n1 0 1 1 1 0
n2 0 0 0 1 0
I = n3 0 0 0 0 1
n4 0 0 0 0 0
n5 0 0 0 0 0

Sea el Grafo G2
La matriz de adyacencia de G2 es:
n1 n2
n1 n2 n3 n4
n1 0 1 0 1
n2 1 0 1 1
I = n3 0 1 0 1
n4 n3
n4 1 1 1 0

Dr. Ing. Iraides Rodríguez


Se puede observar que I es una matriz simétrica en los grafos no dirigidos, ya que si
existe una línea entre dos nodos cualquiera ni y nj que va desde ni a nj, entonces
también existe una línea que va desde nj a ni.

De la observación anterior se deduce que para reprersentar la matriz de adyacencia


de un grafo dirigido se necesita mayor localidades de memoria (n2) que almacenar
uno NO dirigido ya que para este solo se almacena los elemento de la matriz

Dr. Ing. Iraides Rodríguez


triangular superior porque todos los elementos a(i,j)=a(j,i)

El número de elementos que forman la matriz triangular superior es igual a:

n n2 + n
Σ i = -------------------- donde n es el número de nodos del grafo estudiado
i=1 2

Información importante que se puede obtener de la matriz de adyacencia:

-En un grafo no dirigido la suma de los elementos de la i-esima fila o columna de su


matriz de adyacencia representa el grado de incidencia del nodo i.

- En un grafo dirigido, la suma de los elementos de su i-esima fila de su matriz de


adyacencia, representa el grado de incidencia positivo del nodo i y la suma de los
elementos de la j-esima columna representa el grado de incidencia negativo de nj.
La matriz de adyacencia I del grafo G1 es:

n1 n2 n3 n4 n5 El grado de Incidencia + de N1= 1+1+1 = 3


n1 0 1 1 1 0 El grado de Incidencia + de N2= 1
El grado de Incidencia + de N3= 1
n2 0 0 0 1 0 El grado de Incidencia - de N1= 0
I = n3 0 0 0 0 1 El grado de Incidencia - de N4= 1+1 = 2
n4 0 0 0 0 0
n5 0 0 0 0 0

Dr. Ing. Iraides Rodríguez

La matriz de adyacencia de G2 es:

n1 n2 n3 n4
n1 0 1 0 1
El grado de Incidencia de N1= 0+1+0+1 = 2
n2 1 0 1 1
I = n3 0 1 0 1
n4 1 1 1 0 Otra característica es el orden de
caminos 2,3,4,… donde I² nos da el
número de caminos de longitud 2
entre ni y nj.
Dada la matriz de adyacencia

n1 n2 n3
n1 1 1 0 n1 n2 n3
I = n2 0 0 1
n3 1 0 0

n1 n2 n3 n1 n2 n3 n1 n2 n3
n1 1 1 0 n1 1 1 0 n1 1 1 1
I x I= n2 0 0 1 X n2 0 0 1 = n2 1 0 0
n3 1 0 0 n3 1 0 0 n3 1 1 0

Existe un camino de orden 2 entre (n1,n1) , (n1,n2) , (n1,n3) , (n2,n1) , (n3,n1) , (n3,n2)

Dr. Ing. Iraides Rodríguez


Método de Listas de Adyacencia

La lista de adyacencia para un nodo ni dado, es una lista de todos los nodos nj que
sean adyacentes a ni.
Para representar un grafo por este método, se requiere una lista de adyacencia por
cada nodo.

a1
n2
a2
n1 a3 n3

a4
Lista de adyacencia:

n1 n2 n3

n2 n3

n3 n1

Si el grafo es no dirigido, el grado de incidencia de un nodo puede determinarse contando el


número de elementos de su lista da adyacencia

Si el grafo es Dirigido, el número de elementos de una lista de adyacencia indica el grado de


incidencia positivo de ese nodo
Dr. Ing. Iraides Rodríguez
Dado el grafo:
a1
n2 a3 a4

a6 n1 a2 n3
a5

Sus listas de adyacencia son:


n1 n2 n3 n1

n2 n1 n3

n3 n3

El grado de incidencia positivo de n1 es tres; el de n2 es dos y el de n3 es uno

Nótese que la representación de un grafo mediante sus listas de adyacencia requiere un


almacenamiento aproximado de |N | + | A | ya que se necesita de un indicador o apuntador
de comienzo de lista por cada nodo en N y se deben representar todos los arcos.

En el grafo anterior |N |=3 y | A |=6 Entonces se necesitan un almacenamiento de 9


elementos o localidades de memoria del tamaño del tipo de dato.

El método de matriz de adyacencia, generalmente requiere n2 localidades de memoria


del tamaño del tipo de dato.

Dr. Ing. Iraides Rodríguez


Sea el grafo:

n1 a1 n2 Sus listas de adyacencia son:

n1 n2 n4 n3
a4 a5 n2 n3
a7 a6 a3
a8 n3 n2 n3 n4
a9
a2 n4 n1 n4
n4 n3

Almacenamiento = [ |N|=4 + | A |=9 ]= 13

La matriz de incidencia o adyacencia da n2 = 42 =16

n1 n2 n3 n4
n1 0 1 1 1 La escogencia de un método
n2 0 0 1 0 de almacenamiento dependerá
I = n3 0 1 1 1 del número de arcos y nodos
del grafo dado
n4 1 0 0 1

Hasta Aquí Evaluación 25%


Dr. Ing. Iraides Rodríguez

También podría gustarte