« Arbres binaires/Implémentation » : différence entre les versions

Contenu supprimé Contenu ajouté
maintenance
m Robot : Remplacement de texte automatisé (-\n(==={0,3})(?: *)([^\n=]+)(?: *)\1(?: *)\n +\n\1 \2 \1\n)
Ligne 9 :
Ce chapitre développe l'implémentation des arbres binaires en langage [[w:Caml|Caml]] / [[w:OCaml|OCaml]]. Pour plus de précision sur la programmation même dans ces langages, vous pouvez consulter la leçon [[Premiers pas en OCaml]].
 
== Définition des arbres binaires ==
 
Afin de laisser le plus de liberté, on définit un type <code>arbre_binaire</code> à deux paramètres, permettant de spécifier le type des feuilles et des nœuds.
Ligne 37 :
Mais cette définition ne permet pas de séparer le type des nœuds de celui des feuilles.
 
== Opérations sur les arbres ==
 
=== Calcul de la profondeur ===
 
À l'aide d'une fonction récursive, on définit rapidement la profondeur d'un arbre binaire :
Ligne 48 :
</source>
 
=== Autres fonctions de base ===
 
À titre d'exercice, vous pouvez définir les fonctions qui déterminent le nombre de nœuds et le nombre de feuilles dans un arbre binaire.