Professional Documents
Culture Documents
Procedure Creareac (Var R:Arbore X:Integer)
Procedure Creareac (Var R:Arbore X:Integer)
begin
if r<>nil then
begin
if x<r^.inf
then creareAC(r^.st,x)
else if x>r^.inf
then creareAC(r^.dr,x)
else writeln('Elem exista deja')
end
else
begin
new(r); r^.inf:=x;
r^.st:=nil;
r^.dr:=nil
end
end;
procedure SRD(r:arbore);
begin
if r<>nil then
begin
SRD(r^.st);
write(r^.inf:4);
SRD(r^.dr)
end
end;
procedure stergere(x:integer; var r:arbore);
var q:arbore;
begin
if r=nil then writeln('Cheia cautata nu este in
arbore!')
else
if x<r^.inf
then stergere(x,r^.st)
else if x>r^.inf
then stergere(x,r^.dr)
else
begin
q:=r;
if r^.st=nil
then
begin
r:=r^.dr;
dispose(q)
end
else if r^.dr=nil
then
begin
r:=r^.st;
dispose(q)
end
else inlocuire(r^.st)
end
end;