SML-一个小问题

SML-一个小问题,sml,Sml,我已经给出了:spacegather:string list->string 我必须创建一个函数,因此它将调用: spacegather[“我”、“很好”、“很好”]到->“我很好” 塔克斯 找出插层的实际意义。以下是点缀: (*intersperse x [a,b,c..,z]=>[a,x,b,x,c,x..,x,z]*) fun intersperse y nil = nil | intersperse y [x] = [x] | intersperse y (x::xs)

我已经给出了:spacegather:string list->string

我必须创建一个函数,因此它将调用:

spacegather[“我”、“很好”、“很好”]到->“我很好”

塔克斯

找出插层的实际意义。以下是点缀:

(*intersperse x [a,b,c..,z]=>[a,x,b,x,c,x..,x,z]*)

fun intersperse y  nil = nil
  | intersperse y [x] = [x]
  | intersperse y (x::xs)=x::y::(intersperse y xs)

让我看看我是否做对了:

fun spacegather (h::[]) = h 
| spacegather (h::tl) = h ^ " " ^ (spacegather tl);

spacegather ["I", "am", "nice!!"];
输出:val it=“我很好!!”:字符串

这应该可以,对吗?

请看这个问题,这个问题可能是由另一个从事同一作业的学生提出的。
String.concatWith " " ["I", "am", "nice"]
String.concatWith " " ["I", "am", "nice"]