grafos ensayo.docx
TRANSCRIPT
![Page 1: grafos ensayo.docx](https://reader035.vdocuments.co/reader035/viewer/2022071806/55cf8f03550346703b980b6d/html5/thumbnails/1.jpg)
David Alejandro Zamora Elizalde
Grafos
![Page 2: grafos ensayo.docx](https://reader035.vdocuments.co/reader035/viewer/2022071806/55cf8f03550346703b980b6d/html5/thumbnails/2.jpg)
Introducción
Esta es una pequeña investigación de los grafos en estructura de datos que representan estructuras no lineales. Los grafos son representados como un conjunto de nodos y un conjunto de arcos y así se logra establecer un vínculo entre todos los nodos que tenemos.
Para tratar de entender bien este tema serán explicados algunos de los conceptos más importantes sobre este contenido.
![Page 3: grafos ensayo.docx](https://reader035.vdocuments.co/reader035/viewer/2022071806/55cf8f03550346703b980b6d/html5/thumbnails/3.jpg)
¿Qué es un grafo?
Es una estructura no lineal que está divida en nodos y cualquier nodo pueden apuntar a otros nodos y a este también lo pueden estar apuntando incluso el mismo se puede estar apuntando. Un grafo está compuesto por un conjunto de vértices (que también son llamados nodos) y un conjunto de aristas (también llamados arcos).
Tipos de grafos
Existen varios tipos de grafos:
Grafo no dirigido: Donde los arcos no tienen un orden.
Grafo dirigido: En donde cada arista tiene una dirección que seguir.
Grafo conectado: En donde existe un camino (se define como la secuencia de nodos por la que hay que pasar para llegar de un nodo a otro) por el cual están conectados los nodos.
Grafo desconectado: En este tipo de grafo existen nodos que no están conectados.
Grafo sencillo: En este nodo no existen bucles (aristas cuyos lados son idénticos) ni aristas múltiples (que son dos o más aristas que conectan a los mismos nodos).
Grafo múltiple: En este al contrario del sencillo si permite el uso de bucles y aristas múltiples.
Grafo completo: Aquí cada nodo está conectado a todos los demás.
Representación de grafos
Existen dos maneras de representar los grafos las cuales son:
Matriz adyacente: Aquí la matriz se mostrara con un tamaño de N*N, donde N va a equivaler a el número de nodos del grafo. Esta representación se muestra como una tabla en donde se asocian las filas y las columnas a cada nodo de nuestro grafo, para indicar si existe relación entre cada nodo se tomaran los valores de 1 si existe la arista y el 0 en caso contrario.
Memoria dinámica: Aquí se utilizan dos listas enlazadas las cuales serían:
Lista de nodos: que va a estar formada por todos los vértices.
Lista de adyacentes: que va a contener todas las aristas del grafo.
![Page 4: grafos ensayo.docx](https://reader035.vdocuments.co/reader035/viewer/2022071806/55cf8f03550346703b980b6d/html5/thumbnails/4.jpg)
Operaciones básicas
Búsqueda de un nodo: En esta operación como su nombre lo indica es una búsqueda donde se va a localizar un nodo que va a contener determinada información. Para esto si se logra encontrar el nodo indicado nos mostrara la posición en donde se encuentra y si no es así nos devolverá un NULL.
Búsqueda de una arista: aquí se busca una arista dados sus campos de información, origen y destino. Aquí se devuelve un puntero a la lista de aristas que apunta a la arista que estamos buscado o devuelve un NULL en caso de no haberla encontrado.
Inserción de un nodo: se busca el punto en donde queremos insertar nuestro nuevo nodo, después se renuevan los puntos que van a salir del nodo nuevo y también los puntos que lo van a apuntar.
Inserción de una arista: Para empezar esta operación primero tenemos que comprobar que los nodos de origen y destino existan, después se comprueba que no exista un arista igual y para finalizar se hace la inserción.
Borrado de un nodo: Para lograr eso se borra el nodo elegido y también se tienen que borrar las aristas que lo estaban apuntando y las que salían de este.
Conclusión
Los grafos son estructuras de datos no lineales, los cuales están conformados por nodos. Son estructuras que están formados por un conjunto de vértices y de aristas.
Para representarlos tenemos la matriz que nos mostraría una tabla en la cual nos mostrara los valores correspondientes a si están conectados o no cada uno de nuestros nodos. Y también está la lista adyacente la cual son dos listas que contendrán todas las aristas y los vértices de nuestro grafo.
Se pueden hacer varias operaciones en los grafos dependiendo del requerimiento del usuario ya sea búsqueda tanto de nodos como de aristas o la inserción de uno de estos.