Dr C. Bachtarzi Filière : L2 Socle commun informatique
14
(6) G admet r comme racine et est sans cycles
(7) G admet r comme racine et possède n-1 arcs
4. Parcours d’un arbre
Parfois on est amené à parcourir tous les sommets d’un arbre en vue d’effectuer
certains traitements comme rechercher un élément particulier ou afficher les éléments de
l’arbre. A cet effet, plusieurs algorithmes ont été proposés pour le parcours d’un arbre en
profondeur et en largeur.
Pour un parcours donné, il est possible de parcourir de gauche à droite ou de droite
à gauche.
5. Problème de l’arbre de poids minimal
Le problème de l’arbre de poids minimal se pose pour les graphes dont les arcs sont
valués. On appelle ces valeurs des poids. Cette section est dédiée à la présentation du
problème et aux solutions proposées pour sa résolution.
5.1 Présentation du problème
On considère un graphe G=(X, A) connexe dont les arcs ont des valeurs. Le
problème de l’arbre de poids minimal revient à trouver un graphe partiel de G qui soit un
arbre et pour lequel la somme des poids des arcs soit minimale. Le problème de l’arbre de
poids minimal ou maximal a plusieurs applications comme les réseaux téléphoniques, les
réseaux électriques, etc.
Exemple : Dans une ville possédant plusieurs quartiers on veut construire un réseau
d’alimentation en eau reliant tous les quartiers et qui coute le moins cher possible. Ce
problème peut être représenté par un graphe dont les sommets sont les différents quartiers
et les arcs sont les branches du réseau qui relient deux quartiers. Chaque branche possède
une valeur qui représente son cout de construction. La solution revient à déterminer un
graphe partiel qui soit connexe (pour relier tous les quartiers) et qui ne possède pas de
cycles (ces derniers sont inutiles et entrainent un cout d’installation supplémentaire). On
cherche donc un arbre de poids minimal.
5.2 Résolution du problème
Plusieurs algorithmes ont été proposés pour la résolution de ce genre de problèmes.
Dans ce qui suit, sont présentées deux méthodes : l’algorithme de Kruskal et l’algorithme
de Sollin.