foldleft

    1热度

    2回答

    我有以下代码中: findPerson name peeps = List.foldl (\a b -> case b of Just _ -> b Nothing -> if a.name == name then Just a else Nothing ) Nothing peeps 我想记录的foldl内的a和b值。

    0热度

    1回答

    我的理解是/:与foldLeft相同,并且聚合是foldLeft的更快版本,如果列表使用“par”转换为并行集合。如果我是正确的,为什么下面的代码显示:/和foldLeft比列表上使用'par'的集合更快。 我正在计算一个大列表的元素总数和元素数量,并将结果存储在一个元组[Double,Double]中。 //initial tuple2 (sum,count) val tsc:Tuple2[

    0热度

    3回答

    我已经找到了如何使用foldr和lambda找到列表中的1点的数量。但如何使用if状况或任何其他的方法来验证,如果列表中只有一个1 (define (exactlyone L) (foldr (lambda (elem count) (if (equal? elem 1) (+ count 1) count)) 0 L) ) 中如果有可能的,如果条件如何使用count

    0热度

    1回答

    这是我的问题的一个简化版本,我想停止折返回的值,如果条件在折叠满足之后,其中a.size == 7 class test1 { def test(a : List[Int]): Int = { val list = a.foldLeft(if(a.size == 7) 1000 else 0)((b,a) => a + b) list } }

    4热度

    2回答

    我想学习函数式编程和Scala,所以我正在阅读Chiusano和Bjarnason的“Scala函数式编程”。在遇到列表时,我无法理解折叠方式和折叠方式。我在这里环顾四周,但我没有找到一些初学者友好的东西。因此,通过这本书提供的代码是: def foldRight[A,B](as: List[A], z: B)(f: (A, B) => B): B = as match { case N

    1热度

    2回答

    在scala中,我有一个返回值的函数列表。执行功能的顺序很重要,因为功能n的参数是功能n-1的输出。 这暗示使用foldLeft,像: val base: A val funcs: Seq[Function[A, A]] funcs.foldLeft(base)(x, f) => f(x) (详细:类型A实际上是一个Spark数据帧)。 但是,每个函数的结果是互斥的,最后我想要将每个函数

    0热度

    2回答

    为什么累加器AccIn不是左边参数Fun? http://erlang.org/doc/man/lists.html#foldl-3 foldl(Fun, Acc0, List) -> Acc1 Fun = fun((Elem :: T, AccIn) -> AccOut) Acc0 = Acc1 = AccIn = AccOut = term() List = [T] T = ter

    2热度

    1回答

    我们知道静态成员对其子类也是可用的,具体取决于它们的访问修饰符。 ,所以我有以下类别为: public class A { public static void main(String[] args){ //..... } } public class B extends A{ //....

    2热度

    1回答

    我有一个类型为Seq[Array[Int]]的值,我想最后只有一个Array[Int]。我以为foldLeft会的工作,但意外的是没有: scala> val arr1 = Array(1,2,3) arr1: Array[Int] = Array(1, 2, 3) scala> val arr2 = Array(4,5,6) arr2: Array[Int] = Array(4, 5,

    0热度

    2回答

    我写了我自己的foldLeft的递归定义,我希望将它与此函数一起使用joinTerminateLeft需要一个字符串和一个终结符列表并创建一个新字符串所有由终止符分隔的字符串。 例如List("a", "b", "c", "d")终结者;将结束是a;b;c;d; 这里是我的foldLeft我认为这是不错,但我terminateLeft不会为一些奇怪的原因,任何想法工作? def foldLeft