Aquí está la implementación del recorrido en profundidad de un grafo a partir de un vértice inicial:
void RecorridoProfundidad(Grafo G, Vertice inicial){
Pila pila;
Pila_Inicializar(&pila);
inicial.visitado = true;
Pila_Apilar(&pila, inicial);
while(!Pila_EstaVacia(&pila)){
Vertice actual = Pila_Desapilar(&pila);
Mostrar(actual);
Lista adyacentes = actual.adyacentes;
while(adyacentes != NULL){
Vertice vecino = ad