Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/12/2011, 12:53
lomasdelicioso
 
Fecha de Ingreso: diciembre-2010
Mensajes: 52
Antigüedad: 14 años
Puntos: 5
Pregunta Árboles binaryos

Hola foreros del web, para mi carrera tengo que hacer 2 funciones sin recursividad de como mostrar un árbol por pantalla con los tres recorridos ya famosos. He hecho la función secuencial para pre orden, pero no me sale para post orden, alguna ayudita.

Esta sería la solución en pseudocódigo en pre orden por si a alguien le interesa:

Código:
push(NULL); //insertamos en una pila el valor NULL, para asegurarnos de que esté vacía
actual=raíz;                       //insertamos el nodo raíz
MIENTRAS (actual != NULL) HACER

    mostrar(actual);                      //muestro el nodo actual
    SI (D(actual) != NULL)               //preguntamos si actual tiene árbol derecho
         ENTONCES push(D(actual));
    FIN-SI
    SI (I(actual) != NULL)               //preguntamos si actual tiene árbol izquierdo
         ENTONCES actual=I(actual); //nos movemos a él si lo tiene
    FIN-SI
    SINO           // si actual no tiene árbol izquierdo
         actual=tope pila;     //ponemos en actual el último elemento introducido en la pila
         pila.pop();                 //y lo quitamos de la pila
    FIN-SINO

FIN-MIENTRAS
Graccias.