Der richtige Weg, eine Datenstruktur in OCaml zu verwenden
Ok, ich habe einen geschriebenbinary search tree
in OCaml.
type 'a bstree =
|Node of 'a * 'a bstree * 'a bstree
|Leaf
let rec insert x = function
|Leaf -> Node (x, Leaf, Leaf)
|Node (y, left, right) as node ->
if x < y then
Node (y, insert x left, right)
else if x > y then
Node (y, left, insert x right)
else
node
Ich denke, der obige Code hat keine Probleme.
Wenn ich es benutze, schreibe ich
let root = insert 4 Leaf
let root = insert 5 root
...
Ist das der richtige Weg zuuse/insert
zum Baum?
Ich denke, ich sollte die Wurzel nicht deklarieren und jedes Mal, wenn ich den Wert der variablen Wurzel wieder ändere, richtig?
Wenn ja, wie kann ich immer eine Wurzel behalten und jederzeit einen Wert in den Baum einfügen?