Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Recursividad y clases C++

Estas en el tema de Recursividad y clases C++ en el foro de C/C++ en Foros del Web. Hola a todos, En primer lugar decirles que soy muy novata con C++, asi que les pido paciencia. Estoy haciendo un Grafo en C++ y ...
  #1 (permalink)  
Antiguo 29/08/2010, 05:27
 
Fecha de Ingreso: agosto-2010
Mensajes: 1
Antigüedad: 13 años, 7 meses
Puntos: 0
Recursividad y clases C++

Hola a todos,

En primer lugar decirles que soy muy novata con C++, asi que les pido paciencia.

Estoy haciendo un Grafo en C++ y me he encontrado con un problema a la hora de hacer los recorridos en el.

El metodo Grafo:bpp(Nodo *v) debe hacer un recorrido en profundidad desde el nodo *v.

La implementacion de este metodo ha de ser recursiva, y he ahí donde me encuentro con el problema:

El pseudocodigo es el siguiente:

Código:
operacion BusquedaPrimeroEnProfundidad

 BorraMarcas
 para v = 1,...,n hacer
 si marca[v]= noVisitado entonces
    bpp(v)
 finpara
El problema es que, si fuera de Grafo::bpp creo la funcion bpp(Nodo *v), al no ser dicha funcion miembro de ninguna clase no me funciona.

Queda descartado modificar el .h para ponerla como "friend", asi que les pido ayuda para plantear el problema.

Resumiendo: se trataria de ver como implementar la recursividad dentro del metodo, sin hacer uso de funciones externas.

Saludos, Ainhoa.
  #2 (permalink)  
Antiguo 02/09/2010, 12:50
 
Fecha de Ingreso: septiembre-2010
Mensajes: 60
Antigüedad: 13 años, 7 meses
Puntos: 5
Respuesta: Recursividad y clases C++

Creo que si nadie ha respondido es porque no ha quedado muy clara la exposición. ¿Podrías darnos más información? ¿Qué tienes hecho? ¿Cuál es la interfaz de cada clase? ¿Alguna otra restricción?

Se puede llamar a la funcińo ::bpp() perfectamente... otra cosa es lo que puedas hacer con el Nodo, según su interfaz.

Etiquetas: clases, recursividad
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:31.