2012-08-29 74 views
1

我想知道如何获得二叉树的总高度。找出二叉树的高度

这是我在开始错误循环之前到达了多远。

height(leaf(_), 1). 
height(branch(Branch1, Branch2), H):- 
    height(Branch1, H1), 
    height(Branch2, H2), 
    is max(H1, H2). 

我觉得我在正确的轨道上,但我似乎无法环绕最后一部分(因为这些变量不能一次改变的值已设置)我的头。

回答

2

嗯,你快到了。我看不出多少话要说,因为你写的已经很正确了,所以我就完成了这份工作。

height(leaf(_), 1). 
height(branch(Branch1, Branch2), H):- 
    height(Branch1, H1), 
    height(Branch2, H2), 
    H is max(H1, H2) + 1. 
+0

哈哈facepalm围着我的脑袋围着如何赋值给H. – Anticipating