Files
DEV/DEV.3.2/cours/7.Arbres.md

16 lines
1.1 KiB
Markdown
Raw Normal View History

2026-02-03 09:31:14 +01:00
**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.
2026-02-03 09:34:22 +01:00
![Image d'arbre](./Pasted image 20260203092554.png)
2026-02-03 09:31:14 +01:00
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 :
2026-02-03 09:34:22 +01:00
![Image des différents algo de recherche](./Pasted image 20260203092621.png)