【发布时间】:2025-12-12 03:50:02
【问题描述】:
我有一个数组,其中的元素是不同大小的数组。例如:
[[3],[11,2],[11,2],[3]]
我想找到嵌套数组中所有单个项目的排列。对于上面的数组,我想要一个返回值:
[
[3, 11, 11, 3],
[3, 11, 2, 3],
[3, 2, 11, 3],
[3, 2, 2, 3]
]
我有一个可行的解决方案,但似乎特别冗长:
array = [[3],[11,2],[11,2],[3]]
array.product(*array).map { |e| e.drop(1) }.uniq
我应该如何为此实现递归方法,它如何工作?我很难理解这一点。
【问题讨论】:
标签: arrays ruby algorithm recursion multidimensional-array