更改对象的属性

时间:2014-11-22 22:21:01

标签: ocaml

我有一个代表树的类型:

type 'a tree =
    | Null
    | Node of 'a * 'a tree * 'a tree * 'a tree ref;; 

我的目标是编写一个函数'a tree -> unit,它接受​​树并以这种方式对其进行更改,即每个节点都以中缀顺序引用下一个节点(最后一个节点指向Null)。 / p>

如何更改给定的树而不返回它?

1 个答案:

答案 0 :(得分:1)

这是一个使树节点指向自身的函数:

 let circulate tn =
     match tn with
     | Null -> ()
     | Node (_, _, _, tr) -> tr := tn