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

Duda arbol ternario búsqueda (recursividad)

Estas en el tema de Duda arbol ternario búsqueda (recursividad) en el foro de C/C++ en Foros del Web. Buenas, Resulta que he tratado de implementar la destructora de un arbol ternario de búsqueda cuya estructura es la siguiente: struct node_tst { char clau; ...
  #1 (permalink)  
Antiguo 23/12/2012, 04:17
 
Fecha de Ingreso: mayo-2008
Mensajes: 69
Antigüedad: 15 años, 11 meses
Puntos: 0
Duda arbol ternario búsqueda (recursividad)

Buenas,

Resulta que he tratado de implementar la destructora de un arbol ternario de búsqueda cuya estructura es la siguiente:

struct node_tst {
char clau;
node_tst* izq;
node_tst* cen;
node_tst* der;
};
node_tst* _raiz;

Dentro de la destructora de la clase, llamo a la función recursiva y le paso la raiz, pero hay algo del algoritmo que falla en algun caso y no consigo que me libere toda la memoria utilizada. La función recursiva es la siguiente:

void r_destructora (node_tst* n){

if (n != NULL){
if (n -> izq != NULL)r_destructora(n -> izq);
else if (n-> cen != NULL)r_destructora(n -> cen);
else if (n-> der != NULL)r_destructora(n -> der);

delete n;
}

}

Si alguien pudiera echarme una mano se lo agradeceria.
  #2 (permalink)  
Antiguo 23/12/2012, 09:39
 
Fecha de Ingreso: mayo-2008
Mensajes: 69
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Duda arbol ternario búsqueda (recursividad)

Me auto respondo, faltaba hacer un return, sinó no hay manera de que pueda volver a la llamada. Más que nada que no había caído en eso, aunque no devuelva nada hay que hacer un return, sino se rompe la recursividad.

Etiquetas: estructura, arboles
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:22.