لطفا" پرسشهای مربوط به زبان C را در بخش مرتبط به آن وارد کنید. در این بخش فقط الگوریتم مد نظر است نه زبان برنامهنویسی.
function BinaryTreeDepth(Tree): Integer
var
LeftDepth, RightDepth: Integer
begin
if IsBranch(Tree.Left) then
LeftDepth := BinarTreeDepth(Tree.Left)
else
LeftDepth := 0
if IsBranch(Tree.Right) then
RightDepth := BinarTreeDepth(Tree.Right)
else
RightDepth := 0
if LeftDepth > RightDepth then
return LeftDepth + 1
else
return RightDepth + 1
end