Ocaml树。我有这部分代码:[(aux(c + 1)l)@(aux(c + 1)r)]

时间:2013-07-05 01:41:51

标签: ocaml

有人可以告诉我这个代码在我的程序中做了什么吗?  (aux(c + 1)l)@(aux(c + 1)r)

以下是所有代码:

 let rec aux c = function
   Empty -> []
    |Tr(x,l,r) ->
     let l =
      (aux (c+1) l)@(aux (c+1) r) in
       if c = n then x::l else l
         in aux 1 tr;;

1 个答案:

答案 0 :(得分:2)

您遗漏了一些定义ntr的上下文。我也会说你的问题很模糊。一般来说,您提到的表达式会从树的下方获取值列表。它使用@运算符将两个列表集中在一起。