Vous êtes sur la page 1sur 18

Arbres et Arborescences

1
Arbres

Définition

Un arbre est un graphe non orienté, connexe, sans cycle.

Une forêt est un graphe non orienté sans cycle (chacune de ses
composantes connexes est un arbre).

2
Arbres
Exemples
Parmi les graphes suivants, lesquels sont des arbres ?

3
Arbres
 Caractérisation des arbres
Le théorème fondamental suivant donne six caractérisations alternatives des arbres :

 Théorème
Soit G un graphe non orienté à n sommets. Les propositions suivantes sont équivalentes :

=================================================
1. le graphe G est connexe et sans cycle
2. le graphe G est connexe et a (n − 1) arêtes
3. le graphe G est connexe et la suppression de n’importe quelle arête le déconnecte
4. le graphe G est sans cycle et a n − 1 arêtes
5. le graphe G est sans cycle et l’ajout de n’importe quelle arête crée un cycle
6. entre toute paire de sommets de G il existe une unique chaîne élémentaire
=========================================================

4
Arbres

1. le graphe G est connexe et sans cycle


2. le graphe G est connexe et a (n − 1) arêtes
3. le graphe G est connexe et la suppression de
n’importe quelle arête le déconnecte
4. le graphe G est sans cycle et a n − 1 arêtes
5. le graphe G est sans cycle et l’ajout de
n’importe quelle arête crée un cycle
6. entre toute paire de sommets de G il existe
une unique chaîne élémentaire

5
Arborescences

 Définition
Un graphe non orienté est une arborescence s’il est
connexe, sans cycle et si un sommet particulier, la racine, a
été distingué.

Une arborescence est souvent munie d’une orientation


naturelle : On oriente chaque arête de telle sorte qu’il existe
un chemin de la racine à tout autre sommet.

6
Arborescences

Une arborescence est un graphe orienté sans circuit admettant une


racine x0  X telle que pour tout autre sommet xi  X, il existe
un chemin unique allant de x0 vers xi. Si l'arborescence comporte
n sommets, alors elle
comporte exactement n-1 arcs.

7
Arborescences

Par exemple, le graphe suivant est une arborescence de racine a :

8
Arborescences

 Exemples

9
Arborescences

Propriété
Un graphe orienté est une arborescence si et seulement si
• il est connexe,
• il a un unique sommet sans prédécesseur (la racine),
• et tous ses autres sommets ont exactement un
prédécesseur.

10
Arbres couvrant

Un graphe peut avoir plusieurs arbres recouvrants.


11
Arbres couvrant de poids minimum

12
Arbres couvrant de poids minimum

 Définition
Soit G un graphe valué non orienté connexe.
 Un arbre couvrant est un sous-graphe de G couvrant (i.e.
contenant tous les sommets), connexe et sans cycle. Son poids est la
somme des valuations de ses arêtes.
 Un arbre couvrant de poids minimum (en anglais
minimum spanning tree) est un arbre couvrant dont le poids est le
plus petit possible parmi les arbres couvrants de G. Si toutes les arêtes
ont des valuations positives, son poids est le plus petit possible parmi
tous les sous-graphes connexes couvrants de G.

13
Arbres couvrant de poids minimum

Algorithme de Kruskal
Données : G=(X, E, C) est un graphe simple connexe valué
(X : ensemble de sommets, E : ensemble d’arêtes, C : valeur des coûts des
arêtes) X = n ; E = m
Résultat : Arbre couvrant A = (X, F) de poids minimum

1. Trier et renuméroter les arêtes de G dans l’ordre croissant de leur poids


2. Poser F = 0, K = 0
Tant que K < m et F < n -1 faire
Début
Si e K+1 ne forme pas de cycle avec F alors F = F   e K+1 
K=K+1
Fin
Fin

14
Arbres couvrant de poids minimum

Algorithme de Sollin - Calestagne


Données : G=(X, E, C) est un graphe simple connexe valué
(X : ensemble de sommets, E : ensemble d’arêtes, C : valeur
des coûts des arêtes) X = n ; E = m
1. e1 = {x1, y1} est une arête de coût minimum. On pose S = {x1,
y1} et T = {e1}. Passer à (2)
2. Si S = X alors l’arbre (S, T) est l’arbre cherché, sinon passer en
(3)
3. On choisit une arête e = {x, y} de coût minimum ayant un
sommet dans S et l’autre dans le complémentaire de S dans X. On
remplace S par S  {x, y} et T par S  {e}. Passer en (2)

15
Arbres couvrant de poids minimum

Ce problème se pose, par exemple, lorsqu’on désire relier n


villes par un réseau routier de coût minimum. Les sommets
du graphe représentent les villes, les arêtes les tronçons qu’il
est possible de construire et les poids des arêtes
correspondant aux coûts de construction du tronçon
correspondant.

16
Arbres couvrant de poids minimum

 Exemple

1. Utiliser l’algorithme de Kruskal ou de Sollin pour


concevoir un réseau de communication à coût minimum
reliant tous les ordinateurs représentés par le graphe
suivant
2. Déduire le coût minimum ?

17
Arbres couvrant de poids minimum

18

Vous aimerez peut-être aussi