使用Prolog构建BST

时间:2017-04-27 22:59:05

标签: prolog binary-search-tree

这可能是一个非常微不足道的问题:

我正在使用prolog为学校额外学分建立一个抽象的BST。我对Prolog非常陌生,我无法想象如何做这样的事情。

BST是以leafnode(X,L,R)的形式创建的,其中L是左边或更小的BST,R是右边的或更高,BST。

我只提供了BST的功能作为谓词,例如card(BST, Card),它返回Card作为树中元素的数量。因此card(node(1,leaf,leaf),Card)之类的内容应该返回1

我不能完全理解如何开始。我的想法是leafnode是单独的谓词。但是,我怎么连" tie"他们在一起?我如何定义node的规则?

0 个答案:

没有答案