Rekursiver Ansatz:
Delphi-Quellcode:
type
IBinaryNode = interface
function GetLChild: IBinaryNode;
function GetRChild: IBinaryNode;
end;
function GetMaxDepth(Tree: IBinaryNode): Integer;
var
LDepth, RDepth: Integer;
begin
LDepth := 0;
RDepth := 0;
if Tree.GetLChild <> nil then
LDepth := GetMaxDepth(Tree.GetLChild);
if Tree.GetRChild <> nil then
RDepth := GetMaxDepth(Tree.GetRChild);
Result := Max(LDepth, RDepth) +1;
end;
EDIT: Das nach Java zu übersetze, sollte nicht schwierig sein ^^
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1