You are on page 1of 2

ALEJANDRA BEATRIZ CANTO MAZA.

OPERACIONES CON GRAFOS

Crear un grafo vaco (o con n vrtices).

Se declara el grafo como nodos, a cada nodo le corresponder una lista que apuntara a los nodos que son adyacentes a l. A cada nodo se le asigna un entero que es el que estar en la lista. Verificar si est vaco o no.

Se recorreria la lista (busqueda de profundidad o anchura) que contienen los nodos (vertices) y si la lista no tiene vertices entonces es un grafo vacio. Insertar un nodo o una arista.

Para insertar un nodo se crea un apuntador del mismo tipo y se agrega la lista de nodos con todo y su lista de adyacencia, para inseratar una arista se busca el vertice al que corresponde y se agrega a su lista de adyacencia de la manera normal en que se agrega un elemento a una lista. Eliminar un nodo o arista.

Para eliminar el nodo se recorre la lista de vertices en busca del nodo que se desea eliminar el vertice anterior apunta al siguiente del nodo eliminado y se buscan los nodos adyacentes para en su lista de adyacencia eliminar el valor del nodo ya eliminado antes. Para eliminar un arista se busca el vertice que lo contiene y se elimina normalmente como se elimina en una lista. Consultar si existe una arista (obtener la etiqueta).

Yo creo que para consultar si existe se buscaria alguno de los dos vertices que forman la arista y se consulta su lista enlazada si no se encuentra el otro vertice como adyacente al primero, entonces buscamos el segundo vertice y se cunsulta su lista enlazada para ver si se encuentra el vertice primero como adyacente al segundo si ninguno de los casos es positivo entonces no existe la arista. Dados dos nodos determinar si son adyacentes.

Para que los nodos sean adyacentes en la lista adyacente solo seria verificar si en la lista correspondiente al nodo A se encuentra el valor que se le asigno al nodo B o si a la lista del nodo B corresponde el valor dado al nodo A, En caso que los dos sean verdad sern dos nodos fuertemente conexos.

Dado un nodo, determinar cules vrtices son adyacentes a l.

Si es una lista de adyacencia los elementos que son adyacentes a un vrtice sern los almacenados en su correspondiente lista.

Dado una arista, determinar vrtices incidentes a l. Yo creo que dado un arista (AB) para sabes los vertices incidentes en el, se busca el nodo A y se consulta su lista de adyacencia si se encuentra B entonces A es incidente a (AB), se realiza lo mismo en el nodo B y si se encuentra A en su lista de adyacencia entonces B es incidente en (AB), puede ser solo uno de los vertices o ninguno segn sea el caso.

Determinar si el grafo es cclico

para determinar si el grafo es cilcico se recorreria los vertices y se cunsultarian sus listas de adyacencia hasta encontrar un vertice V que sea adyacente a U y donde U sea adyacente a V, es decir hasta encontrar un ciclo.

You might also like