跳到内容

99 门榆树难题(问题 1)/解决方案

来自 Wikibooks,开放世界的开放书籍

解决方案 1:对最后一个元素进行递归搜索

myLast list = 
  case list of
    [] -> Nothing
    [a] -> Just a
    b::c -> myLast c

解决方案 2:反转并提取头部

myLast = List.reverse >> List.head

解决方案 3:使用 List.foldl

myLast = List.foldl (\x _ -> Just x) Nothing
华夏公益教科书