[英]pattern matching on a list of lists in haskell
我想要一個函數,它接受一個數字列表列表,並計算每個內部列表的最大值以返回一個數字列表。 這是我的實現:
f :: [[Int]]->[Int]
f x:xs = (maximum x) : f xs
這會導致解析錯誤:
h.hs:8:1: error: Parse error in pattern: f
|
8 | f x:xs = (maximum x) : f xs
我的代碼出了什么問題? 實現這樣一個功能的正確方法是什么?
在Haskell中,只有當括號括起來時,才可以使用構造函數操作符作為模式:
f :: [[Int]] -> [Int]
f (x:xs) = (maximum as) : f xs
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.