我正在尝试制作一个接受嵌套数组的方法。从该嵌套数组中,我需要返回子数组可以进行的所有可能组合。我已经为此工作了几个小时,但我仍然无法让它工作。
这就像将 sub_array 的每个元素与来自其他 sub_arrays 的每个元素连接起来。
例子:
mega_array = [["a","b"],["c","d"],["e","f"]]
my_method(mega_array)
=> ["ace","acf","ade","adf","bce","bcf","bde","bdf"]
这将通过以下代码完成:
mega_array[0].each do |first|
mega_array[1].each do |second|
mega_array[2].each do |third|
puts first + second + third
end
end
end
不幸的是,子阵列的数量可能会有所不同。这就是我卡住的地方。尝试做一些递归技术,但我仍然不正确。
帮助将不胜感激。我需要使用 Leopard 及更高版本附带的香草 Ruby 来完成这项工作。这是1.8.7,对吧?
谢谢。