a) recuperar el arbol cuyo recorrido es en posorden abc++ab+c+=
Yo lo hago así, pero no me parece que esté bien.
Según lo que tengo intendido en POSORDEN ES:
Hijo izquierdo , hijo derecho y luego raiz.
OPCION 1
Sè que esta mal, porque me queda la C como raiz...cosa que tendría que quedar el +.
Otra que se me ocurre es
OPCION 2:
Pero no sé como seguir haciendolo.
La verdad que hace años que no toco esto, así que no me tengas mucha confianza. ¿Puede ser así?
Espero pueda solucionar tu duda.
Como tip te digo que no te olvides que una vez que pusiste una letra (o número) tenés que cambiar de rama sí o sí. Al final te tienen que quedar todos como hojas.
mira, la notacion post-orden, orden posterior, polaca inversa o como lo llamen, consta de Lado izquierdo primero, Lado derecho segundo y Raiz tercero.
en tu ejercicio. tenes por asi decirlo, comodines, los cuales son cuando tenes 2 raices juntas, (las raices son operaciones)
abc++ab+c+=
en este caso, + e = son raices. vos sabes que el ultimo "=" es el que une las dos ramas del arbol, la izquierda y la derecha.
primero ves:
Izq - Der - Raiz
abc no puede ser todo izquierdo, porque tenes 3 operadores, entonces, como no hay una operacion despues de b, sabes que bc son la parte derecha de a.
entonces te va quedando lógicamente a(bc+)+
como hasta ahi ya cerraste todo lo que parecería ser una rama de las 2 del arbol. Deducís que lo que queda es del lado Derecho ya que apareció el por asi decirlo, "comodín" de 2 raices juntas.
te queda seguir con ab+c+=.
como en este caso SI hay una operación despues de b. sabes que esa es la parte izquierda del sub-arbol del lado derecho.
te queda asi
(ab+)c+. ese ultimo "+" es el que te une completamente el sub-arbol del lado derecho. quedando perfectamente unido por la raiz "="
obteniendo
a(bc+)+(ab+)c+=
graficandolo tal como lo hizo "mhernanr"