我想知道如何获得二叉树的总高度。
这是我在开始错误循环之前走了多远。
height( leaf(_), 1 ).
height( branch(Branch1, Branch2), H ):-
height(Branch1, H1),
height(Branch2, H2),
is max(H1, H2).
我认为我走在正确的轨道上,但我似乎无法绕过最后一部分(因为一旦设置了值,这些变量就无法改变)。
答案 0 :(得分:2)
height( leaf(_), 1 ).
height( branch(Branch1, Branch2), H ):-
height(Branch1, H1),
height(Branch2, H2),
H is max(H1, H2) + 1.