【发布时间】:2018-08-11 12:54:39
【问题描述】:
我应该为树创建一个数据结构,其中每个节点都有未定义数量的分支。我猜这将是一棵玫瑰树。
data GTree a = Node a [GTree a]
现在我应该编写一个 postorderG 函数,它会在后序序列中为我提供我将军中所有元素的列表 我写了这个,但它似乎不对...有人可以帮助我吗?
postorderG :: GTree a -> [a]
postorderG (Node x l r) = postorder l ++ postorder r ++ [GTree x]
【问题讨论】:
-
Node构造函数只有两个参数,所以你的解构看起来像postorderG (Node x children)。我建议您查看concatMap并注意postorderG具有第一个参数所需的类型。