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

Ayuda con arboles binarios R/N (C++)

Estas en el tema de Ayuda con arboles binarios R/N (C++) en el foro de C/C++ en Foros del Web. Tengo un arbol RN con una serie de palabras, y estoy intentando cojer el contenido de ese arbol y guardarlo en un archivo *.txt, he ...
  #1 (permalink)  
Antiguo 26/11/2008, 04:49
 
Fecha de Ingreso: noviembre-2008
Mensajes: 47
Antigüedad: 15 años, 5 meses
Puntos: 0
Pregunta Ayuda con arboles binarios R/N (C++)

Tengo un arbol RN con una serie de palabras, y estoy intentando cojer el contenido de ese arbol y guardarlo en un archivo *.txt, he intentado hacer un recorrido inorden y guardarlo en una lista y luego guardar la lista, pero no consigo compilar.
El codigo del metodo Inorden que me hace el recorrido y me escribe es el siguiente:

template <class T>
void RojoNegro::inOrdenIterativo(RojoNegro<T> &arbol, ostream &os)
{
stack<NodoRojoNegro<T> *> pilaRecorrido;
list<string> diccionarioLista;
NodoRojoNegro<T> *p=raiz;
while (p!=NULL)
{
for ( ; (p->enlaces[0] != NULL); p=p->enlaces[0])
{
pilaRecorrido.push(p);
diccionarioLista.push_back(p);
}
while ((p!=NULL) && (p->enlaces[1] == NULL))
{
diccionarioLista.push_back(p);
cout<<p->clave<<", ";
if (pilaRecorrido.empty())
return;

p=pilaRecorrido.top();
pilaRecorrido.pop();
}
cout<<p->clave<<", ";
p=p->enlaces[1];
}
diccionarioLista.sort();
list<string>::iterator it;
for (it = diccionarioLista.begin(); it != diccionarioLista.end(); it++)
{
os<<(*it)<<endl;
}


y luego desde el main pongo lo siguiente:
diccionarioRN.inOrdenIterativo(diccionarioRN, nombreDiccionario);

Que tengo mal? Me podria alguien ayudar a solucionarlo?

PD: Aprovecho para presentarme en este foro, que creo que visitare bastante

Gracias por la ayuda
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 13:35.