在函数式编程中,折叠(也称为减少,累积或变形)是一种高阶函数,它递归地将变换应用于数据结构,将其“折叠”为汇总值
使用foldl实现Haskell的接收和删除功能。关于如何使用foldl实现take和drop函数的任何建议?拿x ls = foldl ??? drop x ls = foldl ???我试过这些......
我有一个列表,我想删除符合某些条件的元素,但只删除一个元素。 let items = [1; 2; 3] let predicate x = x> = 2 let result = items |> List.fold ... // ...
我正在使用正则表达式包来找到这个正则表达式的一些文本:lazy_static! {static ref FIND_STEPS_RE:Regex = Regex :: new(r“my regex”)。unwrap();我想找到所有可能的捕获并...
Kotlin中fold和reduce之间的基本区别是什么?什么时候用哪个?
我正在阅读Kotlin的基础知识,我对Kotlin中的函数fold()和reduce()非常困惑,有人能给我一个区分两者的具体例子吗?
我有关于scheme和lisp的一般性问题。折叠和缩小功能应该如何工作?在使用(use-modules(srfi srfi-1))的guile方案中你可以使用:guile>(fold cons'()'(1 2 3 4))> ...
我在Scala的Book FP中理解这段代码时遇到了问题。这是代码:trait Monoid [A] {def op(a1:A,a2:A):一个def零:A} def endoMonoid [A]:Monoid [A => A] = new ...
在std :: initializer_list的构造函数的参数列表中折叠与“正常”折叠
我从Jacek Galowicz的C ++ 17 STL Cookbook学习C ++ 17,并且有一个关于lambdas的例子:模板 static auto multicall(Ts ... functions){return [=](auto x){(...
这是我自己的nub实现(删除重复项):nub ::(Eq a)=> [a] - > [a] nub lista = nub_rec lista []其中nub_rec ::(Eq a)=> [a] - > [a] - > [a] ......
什么是'pythonic'相当于函数式编程的'fold'函数?
在Haskell中实现类似以下内容的最惯用的方法是什么:foldl(+)0 [1,2,3,4,5] - > 15或者它在Ruby中的等价物:[1,2,3,4 ,5] .inject(0){| m,x | m + x}#> 15 ...
我的目标是将list定义为局部变量,以便从中获取最大元素。我的代码:#lang racket(定义(f a b c)(列表(+(* a a)(* b b)(* c c))(+ a c))(定义(max-of-list-2 ...
我需要实现一个替换列表中元素的函数 - 要替换 的索引是元组中的fst,而元组中的snd是替换它的内容。我被要求使用foldr或......
我正在尝试使用以下代码实现luhn算法:luhn :: Int - > Bool luhn x =(tail $ show(foldl(\ acc x - > acc +(read x :: Int))0(foldr doEncrypt [] $ zip [0 ..](显示x)...
我尝试从字符列表上的折叠操作中获取多个结果,然后使用对这两个值的解构赋值给它们自己的变量。但这似乎导致......
我正在关注Flink的快速启动示例:监控维基百科编辑流。这个例子是用Java编写的,我在Scala中实现它,如下所示:/ ** * Wikipedia Edit Monitoring * / ...
我有一个序列(列表,迭代器)a0,a1,a2,...,我使用函数f来折叠。我想有一个生成器给我a0,f(a0,a1),f(f(a0,a1),a2),...这类似于FoldList ...
dropnth':: [a] - > Int - > [a] dropnth'xs n = foldl(\ ab - > if(last a)== xs !! n then a else b ++ [])[head xs] xs我试图解决这个问题“删除列表中每个第n个元素”的问题......
Haskell Wikibook提供了一个foldl1 ::(a - > a - > a) - > [a] - > foldl1 f(x:xs)= foldl fx xs foldl1 _ [] =错误“Prelude.foldl1:空列表”那不起作用。 ...
你能跟踪一下这个Haskell foldl lambda函数是如何工作的吗?
myReverse :: [a] - > [a] myReverse = foldl(\ ax - > x:a)[] foldl是(a - > b - > a) - > a - > [b] - > a lambda函数显然在括号内。 foldl在哪里得到它......
我有以下函数:brace_it :: a - > b - >(a,b)brace_it ab =(a,b)我可以做brace_it(brace_it(brace_it 1 2)3)4用它正确得到((( 1,2),3),4)。但我想做...
我是SML的新手,正在研究一些列表算法。我试图使用fold函数一起添加列表列表,没有任何迭代。这个想法是[[1,2,3],[4],[1]] = 11这就是......