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