给出一个类型(真实*'a)列表的列表。我首先想要找到列表中最大的实数,然后为最大的实数返回相应的'a。任何人都可以给我一个提示。我试图制作一个模式
((x1,x2),(y1,y2) :: xs) = if x1 > largest((y1,y2)::xs) then x2 else y2.
我没有写完整个功能因为我是手机。我用一个元素处理了空列表和列表。
答案 0 :(得分:0)
也许这个是你想要的?请注意,空列表的情况仍然缺失,这会给您一个编译器警告。
fun largest ((x1,x2) :: nil) = x2
| largest ((x1,x2) :: (y1,y2) :: xs) =
if y1 > x1 then
largest((y1,y2) :: xs)
else
largest((x1,x2) :: xs)
val max = largest [(1.0,"a"), (4.0, "b"), (4.0, "c"), (3.0, "d")]
给你:max =" b"