nta*_*lbs 17 clojure cumulative-sum
假设我有一个如下的懒惰序列:
(def s (iterate inc 1))
(take 10 s)
=> (1 2 3 4 5 6 7 8 9 10)
Run Code Online (Sandbox Code Playgroud)
现在,我想生成一系列累积和,s如下所示:
=> (1 3 6 10 15 ...)
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?我尝试的是使用atom并累积总和(变异)这是产生累积序列的唯一方法还是有更好的方法来做到这一点?
注意:上述累积金额只是一个例子.源序列可以是其他序列.所以我不能使用公式:s(n) = n(n+1)/2
A. *_*ebb 29
(take 10 (reductions + s))
=> (1 3 6 10 15 21 28 36 45 55)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2085 次 |
| 最近记录: |