当前位置: 首页>>代码示例>>用法及示例精选>>正文


haskell scanl用法及代码示例

Haskell语言Prelude模块中函数scanl的用法及代码示例。

用法类型:

(a -> b -> a) -> a -> [b] -> [a]

它接受第二个参数和列表的第一项并将函数应用到它们,然后将结果和第二个参数供以函数,依此类推。它返回中间结果和最终结果的列表。

示例1:

输入:
scanl (/) 64 [4,2,4] 
         
输出:
[64.0,16.0,8.0,2.0]
         

示例2:

输入:
scanl (/) 3 []
         
输出:
[3.0]
         

示例3:

输入:
scanl max 5 [1,2,3,4]
         
输出:
[5,5,5,5,5]
         

示例4:

输入:
scanl max 5 [1,2,3,4,5,6,7]
         
输出:
[5,5,5,5,5,5,6,7]
         

示例5:

输入:
scanl (\x y -> 2*x + y) 4 [1,2,3]
         
输出:
[4,9,20,43]
         

相关用法

注:本文由纯净天空筛选整理自 haskell scanl。非经特殊声明,原始代码版权归原作者所有,本译文的传播和使用请遵循“署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)”协议。