Witam
Prosiłbym o wytłumaczenie tych dwóch procedur a konkretnie jak odbywa się przeszukiwanie drzewa huffmana :
function codechar(c:char; n:node; b:string; var j:integer):boolean;
begin
if n^.left = nil then begin
if c <> n^.c then codechar := false
else begin
write(b);
j:=j+length(b);
codechar := true;
end;
end
else codechar := codechar(c,n^.left,b+'0',j) or codechar(c,n^.right,b+'1',j);
end;
function huffmancompress(n:node; s:string):integer;
var
i,j:integer;
begin
j:=0;
for i:=1 to length(s) do begin
codechar(s[i],n,'',j);
end;
huffmancompress:=j;
end;