Vous êtes sur la page 1sur 14

Los grafos son un conjunto de puntos, de los cuales algún par de ellos

está conectado por unas líneas.

Si estas líneas son flechas, hablaremos de grafo dirigido (dígrafo),


mientras que si son simples líneas estamos ante un grafo no dirigido.

Se utiliza para representar circuitos, redes, etc. Los grafos son muy
utilizados en computación, ya que permiten resolver problemas muy
complejos.
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. En general en
este tipo de grafos no suele tener sentido que un nodo se apunte a sí mismo
porque el coste de este enlace sería nulo.
Grafos aplicados en la
informática.
En estructura de datos.

Un grafo en el ámbito de las ciencias de la computación es una


estructura de datos, en concreto un tipo abstracto de datos (TAD), que
consiste en un conjunto de nodos (también llamados vértices) y un
conjunto de arcos (aristas) que establecen relaciones entre los nodos.

Formalmente, un grafo, G, se define como un par ordenado,


G = (V, E), donde V es un conjunto finito y E es un conjunto que
consta de dos elementos de V.
Existen diferentes implementaciones del tipo grafo:

 Matriz de adyacencias: se asocia cada fila y cada columna a cada nodo del
grafo, siendo los elementos de la matriz la relación entre los mismos, tomando
los valores de 1 si existe la arista y 0 en caso contrario.

 Lista de adyacencias: se asocia a cada nodo del grafo una lista que
contenga todos aquellos nodos que sean adyacentes a él.
Búsqueda en profundidad.
Se implementa de forma recursiva, aunque también puede realizarse con una pila.
Se utiliza un array val para almacenar el orden en que fueron explorados los
vértices. Para ello se incrementa una variable global id (inicializada a 0) cada vez
que se visita un nuevo vértice y se almacena id en la entrada del
array val correspondiente al vértice que se está explorando.
Búsqueda en amplitud o anchura
La diferencia fundamental respecto a la búsqueda en profundidad es el cambio de
estructura de datos: una cola en lugar de una pila. En esta implementación, la
función del array val y la variable id es la misma que en el método anterior.

Recorrido a lo ancho: La implementación de este recorrido es exactamente igual


que la del recorrido en profundidad, con la única diferencia de que en lugar de una
pila, usamos una cola. Veamos como se comportaría este algoritmo si queremos
recorrer el grafo anterior partiendo de “A”:
Grafos aplicados en las redes
computacionales.
Los grafos se ven reflejados en las redes computacionales ya que se debe administrar el flujo de datos las cuales
deben de llevar una topología es aquí donde se ve reflejado con mayor forma.
Con topologías como las de anillo, doble anillo, estrella, mixta, malla y árbol entre otras.
Ya que en muchos de los casos la información es de ida y vuelta pero pueden cruzar el mismo plano ya que
causarían conflicto, se deben crear redes de uso múltiple para eso son los grafos se denotan mucho en la
utilización las topologías de árbol y doble anillo ya que la información puede dar miles de vueltas pero jamás
puede cruzar el mismo si plano si que forman un ciclo ya sea por puentes rutas o caminos.
Otro ejemplo de grafos enfocándonos a la rama de la informática , lo podemos
ver en las redes , particularmente en las redes sociales , si somos observadores no
tendremos trabajo en darnos cuenta que en la pantalla de inicio de Facebook
(una de las principales redes sociales de la actualidad) se puede percibir una
imagen que denota de manera muy explícita un grafo , la imagen de la que se
hace referencia es la siguiente:

El grafo se puede observar en


la parte izquierda de la
pantalla de inicio de
Facebook , solo es una
pequeña representación
gráfica
La imagen demuestra un pequeño
grafo entre los continentes, los cuales
pueden ser desde personas comunes
o hasta representantes de alguna
organización o líderes de alguna
empresa.

El ejemplo aplicado en un grupo de Facebook , donde el nodo raíz o principal seria el creador del
grupo y los demás miembros del grupo serían los nodos que complementan el grafo , el grafo
podría ser no dirigido y también se podría decir que es un grafo completo ya que todos los
miembros están unidos , ya que cualquier miembro puede dar un comentario y ser retroalimentado.
Uso de Grafos en Circuitos

Las gráficas se utilizan al diseñar circuitos integrados impresos en chips de silicón, que son
usados en dispositivos electrónicos —ésta es una de las aplicaciones más importantes de
lo que conocemos como gráficas planas— que deben ser diseñados de tal modo que
las porciones conductoras no se crucen entre sí.
Uso de Grafos en Mapas digitales

Otro ejemplo del uso de Grafos en informática es el


uso de mapas, en este caso Google Maps al realizar la
búsqueda de una dirección y pedir la indicación se
realizar el marcado del recorrido desde el punto de
partida hasta el destino, y básicamente lo que hace es
ubicar las calles y trazar la ruta punto a punto por
vectores definidos en la aplicación para su
funcionamiento.
Bases de Datos Orientada a Grafos
Las bases de datos orientadas a grafos (BDOG) ayudan a encontrar relaciones y
dar sentido al puzzle completo. Una de las más conocidas es Neo4j, un servicio
implementado en Java.

Neo4j usa grafos para representar datos y las relaciones entre ellos.
Dentro de estas representaciones gráficas, tenemos varios tipos de grafos:
 - Grafos no dirigidos: los nodos y las relaciones son intercambiables, su relación
se puede interpretar en cualquier sentido. Las relaciones de amistad en la red
social Facebook, por ejemplo, son de este tipo.
 - Grafos con peso: en este tipo de gráficas las relaciones entre nodos tienen
algún tipo de valoración numérica. Eso permite luego hacer operaciones.
 - Grafos con etiquetas: estos grafos llevan incorporadas etiquetas que pueden
definir los distintos vértices y también las relaciones entre ellos. En Facebook
podríamos tener nodos definidos por términos como ‘amigo’ o ‘compañero de
trabajo’ y la relaciones como ‘amigo de’ o ‘socio de’.
 - Grafos de propiedad: es un grafo con peso, con etiquetas y donde podemos
asignar propiedades tanto a nodos como relaciones (por ejemplo, cuestiones
como nombre, edad, país de residencia, nacimiento). Es el más complejo.
Conclusiones

El uso de los grafos es muy cotidiano y en la informática aun mas, solo que no estamos
acostumbrados a verlo así, sin embargo si analizamos cada sistema, aplicación, paginas,
etc. Que usamos podremos darnos cuenta de como se relacionan las situaciones y el uso
e interconexiones que podrían representar el uso de grafos.
Tan simple como pensar en Facebook;
Tu perfil

Vous aimerez peut-être aussi