1
我正在做一些球拍练习,其中一个练习要求创建一个名为“count-trees”的函数,它将计算ListTree中的所有元素。中的说明,一个ListTree是具有以下定义(一个或多个)的递归数据结构:如何计算球拍中列表树中的元素数量?
- 它可以是一个整数
- 它可以是一个列表或子列表的列表
-per说明,我们假定一个清单树不能为空
这里有一个什么样的名单树看起来像一个例子:
(list 1 2)
(list (list 1)
2
(list 1 4 5))
(list 1
(list 2 1)
1
1)
现在,这里是WH在我的代码如下所示:
(define count-tree (lambda (lst)
(if (empty? lst)
0
(length (lst)))))
当我执行的功能,它的工作原理,但只有当有一个列表,而不是在包含子列表清单。它似乎只计算有多少个列表,但我希望它列出列表中的所有元素。有没有办法去解决这个问题?谢谢!