假设给定 R 中的序数列表,我想将所有有序二叉树生成为 <=2 列表的递归列表。
因此,例如,给定list(2,1,4,3)
,输出将是:
list(list(1, list(2, list(3, 4))),
list(1, list(list(2, 3), 4)),
list(list(1, 2), list(3, 4)),
list(list(1, list(2, 3)), 4),
list(list(list(1, 2), 3), 4))
列出树的顺序并不重要。排序不是问题,但我在进行有效的功能递归方面遇到了很多困难。我知道 R 的递归速度很慢,但这里的速度不是问题,因为我正在处理相当低(<=7)顺序的列表。