遵循树数据类型的定义
data Tree = Leaf Int | Node Int Tree Tree
定义与图
对应的Tree类型的值 0
1 2
3 4 5 6
t:tree
t =
我对构造函数leaf vs node感到有些困惑。以及问题的确切结构。所以有一个构造函数Node创建一个带有2个树枝的节点,另一个只创建一个叶子节点正确吗?这是否意味着在我们的定义中,唯一的'leaf'时间是在结尾并且在开始时调用节点?
t = Node '0'
(Node '1'
(leaf '3')
(leaf '4')
)
(Node '2'
(leaf '5')
(leaf '6')
)
输入这个有点帮助我合理化这个哈哈。我有什么正确的吗?
答案 0 :(得分:2)
您需要0
而不是'0'
(因为定义中的类型为Int
且'0'
未表示Int
)和{{ 1}}而不是Leaf
。否则正确。