Professional Documents
Culture Documents
begin
n^.sad:=n1^.sai;
n1^.sai:=n;
if n1^.fe=1 then
begin
n^.fe:=0;
n1^.fe:=0;
end
else
begin
n^.fe:=1;
n1^.fe:=-1;
end;
n:=n1;
end;
Procedure Rotacion_DI(var n:t_apunta; var n1:t_apunta);
var n2:t_apunta;
begin
n2:=n1^.sai;
n^.sad:=n2^.sai;
n2^.sai:=n;
n1^.sai:=n2^.sad;
n2^.sad:=n1;
if n2^.fe=1 then
n^.fe:=-1
else
n^.fe:=0;
if n2^.fe=-1 then
n1^.fe:=1
else
n1^.fe:=0;
n2^.fe:=0;
n:=n2;
end;
Procedure Rotacion_II(var n:t_apunta; n1:t_apunta);
begin
n^.sai:=n1^.sad;
n1^.sad:=n;
if n1^.fe=-1 then
begin
n^.fe:=0;
n1^.fe:=0;
end
else
begin
n^.fe:=-1;
n1^.fe:=1;
end;
n:=n1;
end;
begin
Insertar(raiz^.sad, Reg_A);
case raiz^.fe of
-1: begin
raiz^.fe:=0;
end;
0: raiz^.fe:=1;
1: begin
n1:=raiz^.sad;
if n1^.fe=1 then
rotacion_dd(raiz,raiz^.sad)
else
rotacion_di(raiz,raiz^.sad);
end;
end;
end;
end;
END.