帮助sml-陷入困境

帮助sml-陷入困境,sml,Sml,如何声明函数,使Listn:“”a list->“”a list->bool,Listn xs和ys返回true。 示例:lisen[#“1”#“2”],[#“1”#3”]返回false,并[#“1”,#“2”[#“2”,#“1”]返回true尝试以下操作: infix member fun x member [] = false | x member (y::ys) = x = y orelse x member ys; fun listn (x::xs) ys =

如何声明函数,使Listn:“”a list->“”a list->bool,Listn xs和ys返回true。

示例:lisen[#“1”#“2”],[#“1”#3”]返回false,并[#“1”,#“2”[#“2”,#“1”]返回true

尝试以下操作:

infix member
fun x member []         = false
  | x member (y::ys)    = x = y orelse x member ys;

fun listn (x::xs) ys = x member ys andalso listn xs ys
  | listn [] _       = true;

listn
函数的最后一个案例将永远不会被使用。如果第一个参数不是空的,则将运行第一个案例(无论第二个参数是否为空)。如果第一个参数为空,则第二个案例将运行(无论第二个参数是否为空)。谢谢。出于某种原因,我在大学的指导老师让我把它包括在内。幸亏你在这里纠正了他的错误;)