我需要一個函數,該函數僅在每個其他元素上映射一個函數,例如,在列表的每兩個元素上映射一個函數
(f inc '(1 2 3 4))
=> '(2 2 4 4)
我想出了:
(defn flipflop [f l]
(loop [k l, b true, r '()]
(if (empty? k)
(reverse r)
(recur (rest k)
(not b)
(conj r (if b
(f (first k))
(first k)))))))
有一個漂亮的方式來實現這一目標?
比我的選擇要好得多(我爲了比較和啓發的目的而留下的) – noisesmith
確實非常整齊:),但您的選擇也很有趣。 – tumasgiu