tree - 在序言中声明树的好方法?

标签 tree prolog

我在序言中使用树(一般树,不限于二进制)。从我看到的一小段代码来看,虽然在树上定义遍历等很容易,但定义树的实例并不容易。这样做的好方法是什么?另外,我应该如何尝试在每个节点中包含单个属性值?

最佳答案

关于您的评论“但问题是整棵树必须排成一行”:事实并非如此。你也可以使用几行来构造一棵树,例如:

tree(Tree) :-
    Tree = tree(Root, [Child,Leaf3]).
    Child = tree(Node1, [Leaf1,Leaf2]),
    Leaf1 = tree(Node2, []),
    Leaf2 = tree(Node3, []),
    Leaf3 = tree(Node4, []).

关于tree - 在序言中声明树的好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5653137/

相关文章:

jquery - jsTree 未在 IE、Google Chrome 中填充 JSON 数据

java - JAXB 解码树结构

prolog - PROLOG 中的深度逆向 - 列表

list - Prolog 评估两个列表如何相互比较

prolog - 用于从 Prolog 中的复合术语中删除某些术语的谓词

python - python中二叉搜索树的总深度

java - 在java树中查找子节点(递归)

c - 如何遍历多路树

csv - Prolog,读取一个csv文件并做一个谓词。找到所有

PROLOG:如果顺序无关紧要,则确定列表中的元素是否相等