cours l2 arbres
Algorithmique
Les arbres
Florent Hivert
Mél : Florent.Hivert@lri.fr
Page personnelle : http://www.lri.fr/˜hivert
2 de 1
Algorithmes et structures de données
La plupart des bons algorithmes fonctionnent grâce à une méthode astucieuse pour organiser les données. Nous allons étudier quatre grandes classes de structures de données :
Les structures de données séquentielles (tableaux) ;
Les structures de données linéaires (liste chaînées) ;
Les arbres ;
Les graphes.
3 de 1
Problème de la recherche
On aimerai avoir une structure de donnée où l’insertion et la recherche sont efficace.
Pour les tableaux : insertion en O(n), recherche en O(log(n))
Pour les listes : insertion en O(1), recherche en O(n)
4 de 1
Représentations graphiques d’arbres binaires et vocabulaire nœuds 21
4
15
6
branches 9
33
11
3
28
25
5
7
7
12
15
valeurs
29 une branche droite une branche gauche
Ici : arbre, nœuds, branches ; arbre binaire, branches gauches, branches droites ; valeurs (ou étiquettes) des nœuds.
4 de 1
Représentations graphiques d’arbres binaires et vocabulaire nœuds 21
4
15
6
branches 9
33
11
3
28
25
5
7
7
12
15
valeurs
29 une branche droite une branche gauche
Ici : arbre, nœuds, branches ; arbre binaire, branches gauches, branches droites ; valeurs (ou étiquettes) des nœuds.
4 de 1
Représentations graphiques d’arbres binaires et vocabulaire nœuds 21
4
15
6
branches 9
33
11
3
28
25
5
7
7
12
15
valeurs
29 une branche droite une branche gauche
Ici : arbre, nœuds, branches ; arbre binaire, branches gauches, branches droites ; valeurs (ou étiquettes) des nœuds.
5 de 1
Définition récursive nœud-racine 21
4
6
15
28
9
33
25
5
7
11
7
12
3
15
29
sous-arbre gauche arbre vide
sous-arbre droit
Ici :
(nœud-)racine, sous-arbre gauche,