0
如何在Ruby中當q大小未知時以遞歸方式調用如下方法:q[0].from(q[1].from(q[2].from(q[3])))
?當q大小未知時,如何遞歸調用如下方法:q [0] .from(q [1] .from(q [2] .from(q [3]))))
如何在Ruby中當q大小未知時以遞歸方式調用如下方法:q[0].from(q[1].from(q[2].from(q[3])))
?當q大小未知時,如何遞歸調用如下方法:q [0] .from(q [1] .from(q [2] .from(q [3]))))
您可以使用inject
此:需要
q.reverse_each.inject do |acc, value|
value.from(acc)
end
反向把事情按正確順序。第一次調用該塊時acc
是q
,q[3]
的最後一個元素,值爲q[2]
。在下一迭代中,值是q[1]
和acc
是來自先前塊(q[2].from(q[3])
)的結果,以便它計算
q[1].from(q[2].from(q[3]))
等等