我正在尝试用F#编写将y
插入S
的函数,其中y
和S
是元素集,在返回的集合{{应该使用S
按顺序插入1}}元素,如果<
中存在x
,则S
不变地返回。我希望这很清楚。我已经实现了以下功能
S
但是它没有给我预期的输出。例如,如果
let rec insert x S =
match S with
|[] -> x
|e::rest -> e::(insert x rest)
输出应为
S = [2; 3]
x = [3; 4]
但是我得到了
[2; 3; 4]