2つの二分木(t1とt2)を取り、t1の右下にt2を配置する新しいツリーを生成する関数を書いています。t2は、ノードがリーフでなくても、右の子が空である最初のノードに接続されます。
let rec adjoin_right (t1: 'a tree) (t2: 'a tree) : 'a tree
テストケース:
let test () : bool =
adjoin_right (Node (Empty, 1, Empty)) (Node (Empty, 2, Empty)) =
Node(Empty, 1, Node (Empty, 2, Empty))
;; run_test "adjoin_right leaf" test
誰かがこの問題に対して正しい方向に私を導くことができますか?私はおそらくヘルパー関数を書かなければならないことを知っています。