Los grafos son estructuras visuales que representan relaciones entre elementos mediante nodos y aristas. Estos nodos pueden contener datos estructurados o no estructurados y, al conectarse, generan relaciones útiles para diversos análisis. Su capacidad para manejar grandes volúmenes de información los hace ideales para motores de búsqueda y bases de datos orientadas a grafos.
La teoría de grafos nació con la finalidad de representar de forma visual conjuntos abstractos de datos que se encuentran en el mundo real para ser útiles en soluciones de problemas de complejidad.
Partes de un grafo.
Nodos, pieza fundamental de un grafo
Aristas, la línea qué conecta uno más nodos entre sí
Uno de los métodos más comunes a la hora de representar un grafo en programación. Las filas y columnas de la matriz representan los vértices del grafo y en cada una de las posiciones de la matriz va el peso que posee el arco que conecta a 2 determinados vértices.
Se crea una lista para cada vértice donde se almacenan tuplas que contienen el vértice de destino y el peso que contiene el arco que lleva a él.