C'est explicitement dans le programme de ta prépa, demande à ton prof si tu coinces ou profites des heures de TP. Pour mémoire, en Caml le type te donne le squelette de la fonction. Ici les arbres sont définis par
Code:
type ('a,'b) arbre = feuille of 'b
| noeud of ('a*(('a,'b) arbre)*(('a,'b) arbre));;
Une fonction sera donc de la forme
Code:
let fonction_sur_arbre = function
| feuille x -> ...
| noeud (x,ag,ad) -> ...
avec un rec devant éventuellement. Un doigt de jugeote, une écoute en cours et une mise en route des neurones doivent faire le reste.