gpt4 book ai didi

clojure - 获取惰性列表的前 n 项的惰性列表

转载 作者:行者123 更新时间:2023-12-01 07:55:52 24 4
gpt4 key购买 nike

在 Clojure 中,我有一个列表

[a, b, c, d]

我想从中取出一个新的无限元组列表
[ [a,b,c], [b,c,d], [c,d,a], [d,a,b], [a,b,c] ... ]

我试图弄清楚如何使用内置的 seq 函数以纯函数方式执行此操作。

这么简单,我还没有破解吗?或者它实际上是某种难题? (在其他语言中,我会编写自己的循环迭代器并跟踪很多状态。)

更新:另外,为什么有人投票反对?

最佳答案

这可以使用 cycle 的组合来完成。和 partition

(take 5 (partition 3 1 (cycle '(a b c d))))
;; => ((a b c) (b c d) (c d a) (d a b) (a b c))

关于clojure - 获取惰性列表的前 n 项的惰性列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27279702/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com