【发布时间】:2014-02-08 00:31:26
【问题描述】:
考虑以下类型来表示玫瑰树:
data RTree a = No a [RTree a]
考虑函数
tolist a = tolistAux 1 a
where tolistAux n (No x l) = (x,n) : (concat (map (tolistAux (n+1)) l))
我需要定义第一个函数的逆:unlist :: [(a,Int)] -> RTree a
这样unlist (tolist a) = a
【问题讨论】:
-
这与您之前的问题非常相似,我相信您无需额外输入即可通过执行此作业步骤了解更多信息。请认真思考你之前的问题,以及为什么你的导师在这个问题之前提出了这个问题。
-
@enoughreptocomment 我提出了一个可能的解决方案。我怎么能在这里重新调整我以前的问题的解决方案?有什么想法吗?
标签: list haskell tree higher-order-functions