fold

    1熱度

    1回答

    我對F#比較新(已經在C#上工作,Java & C++)。而不是使用List.fold函數,我想創建自己的Fold函數,比如說myCustomFold。預期的輸出可能是: myCustomFold (+) 0 [1; 2; 3 ]將返回6. 任何提示或想法大加讚賞。

    1熱度

    1回答

    Swift標準庫API指定Array具有方法reduce(into:_:),該方法返回使用給定閉包合併序列元素的結果。 API文檔中提到「您可以在整數數組上使用此方法來過濾相鄰的相同條目」。有人可以提供一個這樣做的例子嗎?

    0熱度

    1回答

    我知道vim的摺疊顏色可以通過設置: highlight Folded ... 但我想要的是消除這種亮點(甚至默認config),所以摺疊的行將被摺疊段落的第一行的語法突出顯示。 有沒有辦法做到這一點?

    2熱度

    4回答

    我想知道用scala處理這個問題的慣用方法。 給定開始日期和結束日期以及中間的日期集合,確定給定的日期集合是否包含從開始日期到結束日期所需的所有日期,且沒有間隔日期。 類型簽名: def checkDate(start: DateTime, end: DateTime, between: IndexedSeq[DateTime]): Boolean 「正常」或「不實用」的方式來做到這將是這樣的:

    1熱度

    2回答

    我知道如何使用遞歸來逆轉列表,但我正在嘗試使用foldl來使其更有效。我的代碼如下: reverse list = foldl (++) [] (map (\x -> [x]) list) 當在GHCi中運行它時,它將返回與輸入相同的列表。出了什麼問題?我也試着用foldr來完成它,但它沒有顯示任何改變。

    5熱度

    4回答

    我有一個列表,我想刪除一個匹配某個條件的元素,但只刪除一個元素。 let items = [1;2;3] let predicate x = x >= 2 let result = items |> List.fold ... // result = [1;3] 如何用[1; 3]實現返回列表的方法?

    0熱度

    2回答

    我想定義上Foldable類型 safeIndex :: (Foldable t, Integral i) => t a -> i -> Maybe a safeIndex = foldr step (const Nothing) where step :: Integral i => a -> (i -> Maybe a) -> i -> Maybe a step

    1熱度

    1回答

    我已經實現高階函數遞歸與.foldRight()像any,all,並takeWhile的做法,但dropWhile一直難以捉摸。 _Collections.kt具有必要的方式,但我無法將其轉換爲遞歸結構。 以供參考,這是takeWhile fun takeWhile(list:List<Int>, func:(Int) -> Boolean):List<Int> = list.foldRight(

    0熱度

    1回答

    所以我得將返回True功能,如果數量n應用的按位或XS的任何序列結果: checkBits xs n = not $ null $ filter (==n) $ map (foldr (.|.) zeroBits) (subsequences xs) 現在事情我沒有得到的是foldr給出(.|.)和zeroBits,但我沒有需要foldr另一個參數。 就像我理解的foldr功能,您將它應用到的功能

    1熱度

    1回答

    我嘗試從字符列表中的摺疊操作獲得多個結果,然後對這兩個值使用解構賦值給它們自己的變量。但是,這似乎導致由科特林編譯器異常: java.lang.UnsupportedOperationException: Don't know how to generate outer expression for class <closure-Test$1> 奇怪(我)不破壞結構,這按預期工作。以下是一個示