- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
(defn unfold [step seed]
(if-let [[val new-seed] (step seed)]
(cons val (lazy-seq (unfold step new-seed)))
nil))
(defn fib-step [[x y]] [x [y (+ x y)]])
(take 10 (unfold fib-step [0 1])) ;=> (0 1 1 2 3 5 8 13 21 34)
(defn decreasing [x] (if (neg? x) nil [x (dec x)]))
(unfold decreasing 5) ;=> (5 4 3 2 1 0)
最佳答案
不,unfold
未在 Clojure 中实现。它由 amalloys flatland.useful 库提供,根据 CrossClj 具有广泛的用途。看到您链接的博客文章对该主题进行了相当深入的探索,我怀疑您的问题不仅仅是直接回答可以满足的...是不够的?还是失望iterate
不完全iterate
在名称或行为上?
(defn fib-step [[a b]] [b (+ a b)])
(take 10 (map first (iterate fib-step [0 1])))
(take-while (complement neg?) (iterate dec 5))
unfold
对于这些示例,因为
iterate
已经是核心的一部分。我可以看到人们更喜欢
iterate
如果他们更熟悉的话。
关于clojure - Clojure 有 "unfold"吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34320738/
我有一组字符串,每个字符串都有可变数量的段,由管道 (|) 分隔,例如: $string = 'abc|b|ac'; 每个超过一个字符的段都应该扩展为所有可能的一个字符组合,对于 3 个段,以下“算法
我一直在思考如何实现 unfold 的等价物对于以下类型: data Tree a = Node (Tree a) (Tree a) | Leaf a | Nil 自从标准 unfold 以来,这并不
我从 SICP 学到了很多 scheme,但现在对 common lisp 更感兴趣。我知道常见的 lisp 的 fold 是 reduce,有左折叠或右折叠的特殊参数,但是 unfold 的等价物是
我正在寻找一种 Web 服务或 (OS X) 软件,它们将采用如下样式表: h1,h2 {margin-bottom:1em;} h2.special {color:red;text-align:ju
这个问题在这里已经有了答案: How to replicate PyTorch's nn.functional.unfold function in Tensorflow? (1 个回答) 关闭去年
(defn unfold [step seed] (if-let [[val new-seed] (step seed)] (cons val (lazy-seq (unfold step
我想出了以下玩具证明脚本: Inductive myType : Type := | c : unit -> myType. Inductive myProp : myType -> Type :=
kate 编辑器(Ubuntu 14.04 上的默认 kate 包)。 是否有“折叠/展开全部”的快捷方式? 我在查看菜单中找到了一个选项,但它不能按需要工作。 最佳答案 我是 Kate 开发人员之一
是否有一个更简单的 Seq.unfold 版本,只将前一个元素作为状态?我知道您可以轻松地调整 Seq.unfold 来执行此操作,但结果可读性不是很好。 最佳答案 我不认为有一个内置函数可以做到这一
是否有一个更简单的 Seq.unfold 版本,只将前一个元素作为状态?我知道您可以轻松地调整 Seq.unfold 来执行此操作,但结果可读性不是很好。 最佳答案 我不认为有一个内置函数可以做到这一
我有一个带有两个参数的函数: template void foo(T1 arg1, T2 arg2) { std::cout void bar(Args&&... args) { stat
我正在尝试重构这段代码,它定义了一个 unfold 函数,并使用它来创建 count 函数,该函数用最多可达 count 的数字填充数组。我不想调用 count(100) 我想将 count 转换为一
在 Haskell 编程中,Graham Hutton 定义了列表的展开,如下所示: unfold :: (b -> Bool ) -> (b -> a) -> (b -> b) -> b -> [a
这个问题已经有答案了: How to explode a list inside a Dataframe cell into separate rows (11 个回答) 已关闭 4 年前。 这个数据
我已经浏览了official doc 。我很难理解这个函数的用途和工作原理。有人能用通俗的语言解释一下吗? 最佳答案 unfold 将张量想象为一个较长的张量,其中重复的列/行值“折叠”在彼此之上,然
我有一个包含数组的流,其中的每个元素都有一个 id。我需要将其拆分为每个 ID 的流,当源流不再携带该 ID 时,它将完成。 例如具有这三个值的输入流序列 [{a:1}, {b:1}] [{a:
我有一个包含两列文本和计数的 CSV 文件。目标是从这个转换文件: some text once,1 some text twice,2 some text thrice,3 对此: some tex
我刚刚注意到,当您点击图像时,Google 图片搜索上会出现漂亮的"new"展开效果。我想将其实现到我的项目中。我确信已经有 jquery 插件可以做到这一点。但我不知道如何调用此效果以便进行正确的搜
我正在寻找从笛卡尔乘积在 pandas 中创建一个 MultiIndex,其中一个级别是“特殊的”并且将与任意数量的附加级别相关联,我想在与特殊级别相同。最终结果证明比描述容易得多。 下面的代码显示了
我试图了解 Haskell 的设计 Data.Collection 图书馆,来自 Scala 文学背景。 它使用 Functional Dependencies (其中有 Scala analog )
我是一名优秀的程序员,十分优秀!