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)順序のリストを扱っているので、ここでの速度は問題ではありません。