gpt4 book ai didi

.net - F# 版本的 Haskell 列表解构

转载 作者:行者123 更新时间:2023-12-04 16:40:28 25 4
gpt4 key购买 nike

我如何在 F# 中执行此操作:

f acc (x:y:z:xs) = f (acc-x+y*z) xs
f acc [] = acc

那里的算法是任意的,重要的一点是选择列表的前 3 个和尾部,因为我需要使用所有它们和尾部。

我是否必须在 F# 中使用重复的头部调用以弹出 x y 和 z 来强制编写它?

编辑:
请评论这种技术在haskell中的正式名称,我会将其放在问题标题中以供其他人将来搜索,我不记得了。

最佳答案

当模式匹配失败时你想做什么?你可能想要这个:

let rec f acc = function
| x::y::z::xs -> f (acc-x+y*z) xs
| _ -> acc

关于.net - F# 版本的 Haskell 列表解构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11677806/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com