Advertisement
Guest User

Untitled

a guest
May 29th, 2014
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
F# 0.49 KB | None | 0 0
  1. let rec get_min =
  2. | Br ( v, Lf, _ ) -> v
  3. | Br ( _, l, _ ) -> get_min(l);;
  4.  
  5. let rec remove_min =
  6. | Br ( _, Lf, r ) -> r
  7. | Br ( v, l, r ) -> Br ( v, remove_min(l), r );;
  8.  
  9. exception OraNemu;;
  10. let rec remove_id id =
  11. | Lf -> raise OraNemu
  12. | Br ((x,y), l, r) ->
  13.     if x < id then Br((x,y), remove_id id l, r)
  14.     elif x > id then Br((x,y), l, remove_id id r)
  15.     else match (l,r) with
  16.          | (Null, r) -> r
  17.          | (l, Null) -> l
  18.          | (l, r) -> Br(get_min r, l, remove_min r);;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement