Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- let rec removeNode e = function
- | Lf -> Lf
- | Br (v, t1, t2) -> if (funcID (<) (e,v)) then (Br(v, removeNode e t1, t2))
- elif (funcID (>) (e,v)) then (Br(v, t1, removeNode e t2))
- else match (t1, t2) with
- | (Lf, Lf) -> Lf
- | (Br(v1, t11, t21), Lf) -> Br (v1, t11, t21)
- | (Lf, Br(v2, t12, t22)) -> Br (v2, t12, t22)
- | (Br(v1, t11, t21), Br(v2, t12, t22)) -> let (min, newTree) = removeMinNode (Br(v2, t12, t22))
- Br (min, Br(v1, t11, t21), newTree)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement