3- ÁrbolesSolución de la Autoevaluación

recorbin.adb
 
package body recorbin is
procedure preOrden(a:in arbin; l:out lista) is
-- Pre: l=l0
-- Post: l=concatena(l0,preorden(a))
ai,ad:arbin;
begin 
if not esVacio(a) then
anadeDcha(l,raiz(a));
subIzq(a,ai);
preOrden(ai,l);
subDer(a,ad);
preOrden(ad,l);
end if;
end preOrden;

procedure postOrden(a:in arbin; l:out lista) is
-- Pre: l=l0
-- Post: l=concatena(l0,postorden(a))
ai,ad:arbin;
begin 

if not esVacio(a) then
subIzq(a,ai);
postOrden(ai,l);
subDer(a,ad);
postOrden(ad,l);
anadeDcha(l,raiz(a));
end if;
end postOrden;

procedure inOrden(a:in arbin; l:out lista) is
-- Pre: l=l0
-- Post: l=concatena(l0,inorden(a))
ai,ad:arbin;
begin 

if not esVacio(a) then
subIzq(a,ai);
inOrden(ai,l);
anadeDcha(l,raiz(a));
subDer(a,ad);
inOrden(ad,l);
 end if;
end inOrden;


end recorbin; 
 



  E.Mayordomo y K. Urzelai 
elvira at posta.unizar.es
karmelo at posta.unizar.es

Fecha de actualización: 5-9-01