fold 相关问题

在函数式编程中,折叠(也称为减少,累积或变形)是一种高阶函数,它递归地将变换应用于数据结构,将其“折叠”为汇总值

这个折叠树函数如何在Haskell中工作

在这里,我试图理解这个将树折叠成一个值的函数。它显示foldTree将两个函数作为参数,它将第一个函数应用于树a的元素,然后......

回答 1 投票 1

使用foldr编写haskell函数

我有以下功能,应该用foldr编写。 f [] = [] f(x:xs)| x == 0 =案例f xs of [] - > [] ys @(y:_) - >如果y == 0则ys else x:ys | ...

回答 1 投票 -3

折叠这是恒定空间和短路

我正在尝试构建一个与Prelude产品基本相同的Haskell函数。然而,与该函数不同,它应该具有以下两个属性:它应该在恒定的空间中运行......

回答 2 投票 3

foldr和zipWith(:)如何一起工作?

我是Haskell的新手,我遇到了令我困惑的以下代码:foldr(zipWith(:))(repeat [])[[1,2,3],[4,5,6],[ 7,8,9,10]]它产生以下结果,在玩完之后......

回答 2 投票 5

懒惰的折扣,提前终止混乱

通过Scala中的Functional Programming,我遇到了以下代码片段:def foldRight [A](z:=> B)(f:(A,=> B)=> B):B = uncons match {case Some ((h,t))=> f(h,t ....

回答 1 投票 7

当文章内容经过折叠时,在容 器上留下填充

我有一个容器,里面有我的标题,导航,侧边栏和文章。当物品的内容经过折叠时,在容 器的左侧添加填充物或边缘。 ...

回答 2 投票 0

这个Depth First Search实现现在是递归的吗?

我有这个函数用于函数遍历图:private def dfs(current:RCell,rCellsMovedWithEdges:Vector [RCell],acc:Vector [RCell] = Vector()):Vector [RCell] = {current.edges ....

回答 2 投票 0

折叠Haskell中的实现

我在尝试理解Haskell上的folds实现时遇到了很多问题。我需要使用具有此输出的折叠的两个函数> runLengthEncode“aaaaaaabbb”[(7,'a'),(3,'b')]> ...

回答 1 投票 1

处理一次收集两个相邻元素的集合(使用流)

我有一个代表不同城市的对象列表。我想对该列表做的是获取列表中相邻城市之间距离的总和。所以,如果我的列表是l = {c1,c2,c3},...

回答 2 投票 1

使用折叠插入

有人可以解释我如何使用折叠编写插入函数?另外,我听说过折叠或折叠;在这种情况下哪一个最适合使用?这是我的尝试......

回答 2 投票 3

Haskell折叠实现`elemIndex`

我正在看Haskell elemIndex函数:elemIndex :: Eq a => a - > [a] - >可能Int这个定义中的Maybe意味着什么?有时当我打电话给它时,输出有一个Just或Nothing ......

回答 3 投票 -1

在Sublime Text中折叠/展开母版时,保留任何级别的子折叠

我需要在折叠/展开母(超)折叠时保留子折叠。通过Ctrl + Shift +]展开类时。它也会展开它的折叠功能。是否有可能仅展开......

回答 1 投票 0

prolog实现foldl1

我试图在prolog中实现foldl1而不使用内置的foldl谓词。我的代码产生语法错误:运算符预期:foldl1(_,[E],E)。 foldl1(谓词,[X,Y | Z],结果): - 调用(...

回答 1 投票 1

使用`foldl`实现Haskell的`take`函数

使用foldl实现Haskell的接收和删除功能。关于如何使用foldl实现take和drop函数的任何建议?拿x ls = foldl ??? drop x ls = foldl ???我试过这些......

回答 4 投票 0

F#仅从列表中筛选出第一个匹配项

我有一个列表,我想删除符合某些条件的元素,但只删除一个元素。 let items = [1; 2; 3] let predicate x = x> = 2 let result = items |> List.fold ... // ...

回答 4 投票 5

折叠后返回结果的闭包

我正在使用正则表达式包来找到这个正则表达式的一些文本:lazy_static! {static ref FIND_STEPS_RE:Regex = Regex :: new(r“my regex”)。unwrap();我想找到所有可能的捕获并...

回答 3 投票 3

Kotlin中fold和reduce之间的基本区别是什么?什么时候用哪个?

我正在阅读Kotlin的基础知识,我对Kotlin中的函数fold()和reduce()非常困惑,有人能给我一个区分两者的具体例子吗?

回答 2 投票 71

理解折叠和减少方案中的功能

我有关于scheme和lisp的一般性问题。折叠和缩小功能应该如何工作?在使用(use-modules(srfi srfi-1))的guile方案中你可以使用:guile>(fold cons'()'(1 2 3 4))> ...

回答 1 投票 0

理解传递给折叠的curry函数

我在Scala的Book FP中理解这段代码时遇到了问题。这是代码:trait Monoid [A] {def op(a1:A,a2:A):一个def零:A} def endoMonoid [A]:Monoid [A => A] = new ...

回答 1 投票 4

在std :: initializer_list的构造函数的参数列表中折叠与“正常”折叠

我从Jacek Galowicz的C ++ 17 STL Cookbook学习C ++ 17,并且有一个关于lambdas的例子:模板 static auto multicall(Ts ... functions){return [=](auto x){(...

回答 1 投票 2

© www.soinside.com 2019 - 2024. All rights reserved.