13
Clojureでは、スライディングウィンドウを(大きすぎず、大きすぎない)seq上に置くのに最適な方法は何でしょうか?私はちょうどdrop
とtake
を使用し、現在のインデックスを追跡するか、それとも私が行方不明になっているより良い方法がありますか?連続ウィンドウ上のスライディングウィンドウ
Clojureでは、スライディングウィンドウを(大きすぎず、大きすぎない)seq上に置くのに最適な方法は何でしょうか?私はちょうどdrop
とtake
を使用し、現在のインデックスを追跡するか、それとも私が行方不明になっているより良い方法がありますか?連続ウィンドウ上のスライディングウィンドウ
:
user=> (partition 3 1 [3 1 4 1 5 9])
((3 1 4) (1 4 1) (4 1 5) (1 5 9))
は、Windows上で動作する場合、また、マップでこれを行うには便利なことができます:
user=> (def a [3 1 4 1 5 9])
user=> (map (partial apply +) (partition 3 1 a))
(8 6 10 15)
user=> (map + a (next a) (nnext a))
(8 6 10 15)