我想创建一个删除任何整数n的函数并返回列表。我知道我想怎么做,但不知道删除它的命令。
这是数据类型
type alist =
A
| L of int * Alist
以下是数据类型的外观:
let l = L(2, L(1, L(2, L(7, L(3, L(2, A))))))
remove 2 l;;
应该返回
l = L(1, L(7, L(3, A)))
这是我到目前为止所做的:
let rec remove n l =
match (n, l) with
| (n, A) -> l
| (n, L(head,tail)) when (n = head) ->
我不知道如何摆脱列表或元素。