/arbres.sozi.html
**Principe**
Ce que en informatique on nomme _arbre_ est une évolution directe du concept de liste chaînée. Il suffit pour cela de permettre à chaque maillon de contenir plusieurs références à d'autres maillons. On interdit cependant les références circulaires pour en simplifier le parcours.
![[Pasted image 20260203092041.png]]
Un maillon est nommé _nœud_ dans cette nouvelle structure. L'élément qu'il contient est son _étiquette_.
Par analogie avec les arbres généalogiques, un nœud contenant une référence est appelé _nœud parent_ et le nœud référencé est appelé _nœud enfant_. Par analogie avec les véritables arbres, le nœud de départ est nommé _racine_ et les nœuds sans enfants sont nommés _feuilles_.
Les arbres _homogènes_ contiennent des nœuds d'une seule classe. Les arbres _hétérogènes_ permettent plusieurs classes de nœuds (en Java, par substitution).
Un arbre est _binaire_ si aucun de ses nœuds ne peut avoir plus de deux enfants.
Les différentes façon de lire un arbre :
![[Pasted image 20260203091755.png]]