3
我发现自己需要将一系列元素转换为一个“对”序列,其中第一个元素是初始序列的元素,while的第二个元素是该元素的初始序列的尾部。有没有更简单的方法来获得序列的每个元素,并与“它的”尾巴配对?
(ABCDE) - >((A(BCDE))(B(CDE))(C(DE))(d(E))(E()))
我写这样的:
(defn head-and-tail [s]
(cond (empty? s)()
:else (cons (list (first s) (rest s)) (head-and-tail (rest s)))))
是否有一个内置的功能,或简单组合,内置的功能,可以更容易地做到这一点?
谢谢Michal,非常具有启发性。 –