从易变的列表中插入和删除

时间:2019-01-17 15:45:23

标签: f#

我想编写一个函数,将值v插入位置a的列表中。列表的类型是

type RefList<'t> = Item<'t> ref
and Item<'t> = | Nil | Cons of 't * RefList<'t>

let rec insert<'t> (a: int) (v: <'t>) (structure: RefList<'t>): unit =

let rec remove<'t> (a: int) (structure: RefList<'t>): unit =

我尝试了类似的方法,但是我确定我的方法很错误

let mutable worker = 0
     if a = worker then then Cons(v, !structure) else Cons(y, insert i v ys)
 worker <- worker + 1

我不确定我是否应该对| Nil和| Cons进行匹配。 “单位”使我感到困惑。

我希望有人能帮助我,谢谢!

编辑:我已经有一个函数RefListToList和ListToRefList。这可能对其他功能有用

0 个答案:

没有答案