Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- let rec dbllist_add dbllist element =
- match dbllist with
- | Vide -> Gauche (element, Vide)
- | Gauche (u,v) ->
- if u < element then
- (match v with
- | Vide -> Gauche (u, dbllist_add v element)
- | Gauche (x, y) ->
- if x < element then
- Gauche (u, dbllist_add v element)
- else
- Gauche (u, Gauche (element, v))
- | Droite (x, y) ->
- if y < element then
- Gauche (u, Droite (v, element))
- else
- Gauche (u, Droite (dbllist_add x element, y))
- )
- else
- Gauche (element, Gauche (u, v))
- | Droite (u,v) ->
- if v < element then
- Droite (Droite (u, v), element)
- else
- (match u with
- (* Warning pour le cas Vide car le constructeur Vide est toujours a droite, cad Gauche (x, Vide) *)
- | Gauche (x, y) ->
- if x < element then
- Droite (dbllist_add u element, v)
- else
- Droite (Gauche (element, u), v)
- | Droite (x, y) ->
- if y > element then
- Droite (dbllist_add u element, v)
- else
- Droite (Droite (u, element), v)
- )
- ;;
Add Comment
Please, Sign In to add comment