定义一个与图对应的Tree类型的值

Posted

技术标签:

【中文标题】定义一个与图对应的Tree类型的值【英文标题】:Define a value of type Tree corresponding to the diagram 【发布时间】:2017-10-31 06:11:20 【问题描述】:

遵循树数据类型的定义

 data Tree = Leaf Int | Node Int Tree Tree

定义与图表对应的Tree类型值

       0
    1    2
 3   4   5  6

t : 树

t =

我对构造函数叶子与节点有些困惑。和问题所要求的确切结构。那么有一个构造函数 Node 可以创建一个具有 2 个树分支的节点和一个只创建一个叶节点的节点,对吗?这是否意味着在我们的定义中,唯一使用“叶子”的时间是在结尾并在开头调用节点?

t = Node '0' 
    (Node '1'
       (leaf '3')
       (leaf '4')
     )
    (Node '2'
       (leaf '5')
       (leaf '6')
     )

这样打出来有助于我合理化这个哈。我有正确的吗?

【问题讨论】:

【参考方案1】:

您需要0 而不是'0'(因为定义中的类型是Int'0' 不表示Int)和Leaf 而不是leaf。否则正确。

【讨论】:

以上是关于定义一个与图对应的Tree类型的值的主要内容,如果未能解决你的问题,请参考以下文章

golang-指针类型

如何扩展 boost property_tree 来处理自定义类型?

为自定义路径类型设置 boost property_tree

错误:[mobx-state-tree] 期望 mobx-state-tree 类型作为参数 1,改为未定义

myBatis查询语句中要的参数为Map类型,但传递String类型的值也能使用

c#中怎样定义枚举?