Vous êtes sur la page 1sur 34

INFO245 : Mathématiques pour l’Informatique

Séance 8 : Graphes et Arbres

M. L. BALDE

UFR SAT, L2INFO


Université Gaston Berger de Saint-Louis

2020 − 2021

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


M. L. BALDE INFO245 : Mathématiques pour l’Informatique
Graphes

La notion de graphe généralise la notion de relation sur un ensem-


ble; elle s’intéresse à la façon dont sont liés les objets. Les graphes
sont utilisés dans de nombreux domaines : de la sociologie à la
planification des transports, de la prise de décision au marketing,
en passant par la conception des jeux, la gestion des réseaux, le
routage dans des circuits VLSI, les problèmes de routage généraux,
la recherche de plus courts chemins, l’ordonnancement de tâches
dans des systèmes parallèles, les schémas de circuits électriques, les
formules des molécules, les organigrammes, les arbres généalogiques,
les diagrammes de Hasse, les n-cubes, . . .

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Graphes

Définition
Formellement, un graphe orienté G est constitué :
☞ d’un ensemble fini, S, dont les éléments sont les sommets du
graphe,
☞ d’un ensemble fini, A, dont les éléments sont les arcs du
graphe, on dit aussi les flèches,
☞ d’une application δ : A → S 2 qui associe à chaque arc un
couple de sommets.

Le graphe G pourra être désigné par les symboles (S, A, δ); le


nombre de sommets |S|, s’appelle l’ordre du graphe.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Graphes
Définition
Si ε est un arc et si δ(ε) = (s, t), on dit que s et t sont les
extrémités de ε.

Définition
On dit que deux sommets s et t sont adjacents s’il existe au moins
un arc ε tel que δ(ε) = (s, t).

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Graphes

Définition
Deux arcs qui ont le même début et la même fin sont qualifiés de
parallèles.

Définition
Pour certains auteurs un graphe ne contient jamais d’arêtes par-
ralèles et ils appellent multigraphes les graphes qui en ont.

Définition
Un arc dont le début et la fin coı̈ncident s’appelle une boucle.

Définition
Un graphe qui n’a ni arcs parallèles ni boucle s’appelle un graphe
simple .

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Graphes

Le mot graphe a été rencontré lorsqu’on a défini le graphe d’une


relation binaire R sur un ensemble E .
Cet ensemble s’interprète facilement comme un graphe orienté : il
suffit de prendre comme sommets les éléments de E , et comme
arcs les couples (x , y ) pour lesquels x Ry , l’application δ est alors
simplement l’identité.

On remarque que ce graphe n’a pas d’arcs parallèles.


En fait les graphes orientés dépourvus d’arcs parallèles sont en
bijection avec les relations binaires sur un ensemble fini.
La possibilité d’avoir des arcs parallèles est donc une
généralisation de la notion de relation binaire qui traduit le
fait que des objets sont liés de plusieurs façons.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Graphes
Définition
Soient G = (S, A, δ) et H = (T , B, ω) deux graphes. On dit qu’ils
sont isomorphes quand il existe une bijection ϕ : S → T et une
bijection Φ : A → B ayant la propriété suivante : si l’on prend un
arc quelconque ε de A, et si l’on a δ(ε) = (s, t), alors Φ(ε) a pour
début ϕ(s) et pour fin ϕ(t).

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Graphes non orientés
Définition
Formellement, un graphe non orienté G est constitué :
☞ d’un ensemble fini, S, l’ensemble des sommets du graphe,
☞ d’un ensemble fini, A, l’ensemble des arêtes du graphe,
☞ d’une application δ : A → (S1 ∪ S2 ) où Sk désigne l’ensemble
des parties à k éléments de S.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Quelques problèmes classiques

La naissance de la théorie des graphes remonte à 1736 avec la pub-


lication par Euler du premier article sur le sujet. A cette époque,
dans la ville de Königsberg, deux ı̂les étaient reliées entre elles et au
reste de la ville par sept ponts disposés de la façon suivante :

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Quelques problèmes classiques

Des promeneurs perplexes se demandaient en vain s’ils pouvaient


revenir à leur point de départ en passant par tous les ponts une fois
et une seule.
Euler a résolu ce problème, inventant du même coup la théorie des
graphes. Dans le graphe ci-dessous les sommets représentent les
zones terrestres, ı̂les ou rives, et les arêtes les 7 ponts qui les relient.

Il s’agit donc de suivre les arêtes de façon à parcourir toutes les


arêtes une fois et une seule. La promenade ne peut pas se faire.
M. L. BALDE INFO245 : Mathématiques pour l’Informatique
Quelques problèmes classiques
Un dodécaèdre est un solide régulier qui comporte 12 faces, 25
arêtes et 20 sommets. Chaque sommet du dodécaèdre porte un
nom de ville et le jeu de Hamilton consiste à trouver une façon de
se déplacer de ville en ville, le long des arêtes, en passant par toutes
les villes une fois et une seule, pour finalement revenir à la ville de
départ.

Les sommets et les arêtes du dodécaèdre forment un graphe. Une


solution du jeu est indiqué sur la figure de droite.
M. L. BALDE INFO245 : Mathématiques pour l’Informatique
Quelques problèmes classiques

Problème des 3 villas


Les propriétaires de trois villas veulent tous être reliés à la mairie,
l’école et le stade par des routes privées, mais comme ils se
”détestent” cordialement, il n’est pas question d’accepter des car-
refours, pas plus d’ailleurs que des ponts ou des souterrains. Que
faire ?

Malgré toute leur bonne volonté les responsables communaux ne


sont jamais parvenus à faire les 9 routes. Au moment de tracer la
dernière route, c’est toujours le blocage.
M. L. BALDE INFO245 : Mathématiques pour l’Informatique
Quelques problèmes classiques

Définition
On dit qu’un graphe est planaire s’il peut être dessiné dans un plan
de sorte que deux arêtes quelconques n’aient jamais d’autres points
communs que leurs extrêmités.

Dans le problème des 3 villas, il fallait voir si le graphe de la figure


précédente, qu’on note K3,3 est planaire.
Définition
D’une façon générale, on note Kn le graphe non orienté d’ordre n,
sans boucle, dans lequel chaque paire de sommets est reliée par
une et seule arête.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Quelques problèmes classiques

Problème des 4 couleurs (Guthrie 1880, Appel et Haken 1976)


On peut schématiser une carte de géographie au moyen d’un graphe
planaire; ses sommets représentent les pays qui figurent sur la carte
et on décide que deux sommets sont adjacents quand ils représentent
deux pays frontaliers. Colorier les pays revient à construire une
application de l’ensemble des sommets dans l’ensemble des couleurs.

Le problème des quatre couleurs peut être reformulé comme suit :


étant donné un graphe planaire, existe-t-il toujours une application
de l’ensemble des sommets vers un ensemble à 4 éléments qui associe
des images distinctes aux sommets adjacents ?

Cette question fait partie des problèmes de coloration de graphe,


ou des problèmes chromatiques.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Degrés,Chemins, Circuits, Cycles

Définition
Dans un graphe non orienté le nombre d’arêtes dont le sommet s
est une extrémité s’appelle le degré de s (dans cette définition les
boucles comptent comme si on avait 2 arêtes); on le note d(s).

Définition
Dans un graphe orienté, on distingue un degré sortant, noté d + (s),
le nombre d’arêtes dont s est le début et le degré entrant, noté
d − (s), le nombre d’arêtes dont s est la fin. On a :

d(s) = d + (s) + d − (s)

Remarque
Lorsque deux graphes sont isomorphes, les sommets qui correspon-
dent ont les mêmes degrés.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Degrés,Chemins, Circuits, Cycles

Chemin de longueur n
Soient s et t deux sommets d’un graphe orienté. On dit que la
suite alternée de sommets et d’arêtes (S0 , ε1 , S1 , ε2 , . . . , εn , Sn ) est
un chemin de longueur n menant de s à t si :
S0 = s,
δ(εi ) = (Si−1 , Si ) pour tout i compris entre 1 et n,
Sn = t.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Degrés,Chemins, Circuits, Cycles

Chaı̂ne de longueur n
Soient s et t deux sommets d’un graphe non orienté. On dit que la
suite alternée de sommets et d’arêtes (S0 , ε1 , S1 , ε2 , . . . , εn , Sn ) est
une chaı̂ne de longueur n menant de s à t si :
S0 = s,
δ(εi ) = {Si−1 , Si } pour tout i compris entre 1 et n,
Sn = t.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Degrés,Chemins, Circuits, Cycles

Le mot chemin a été choisi pour suggérer l’idée de déplacement :


si l’on voit dans un graphe le plan d’une ville, un chemin menant
de s à t est un itinéraire empruntable par un automobiliste (ou un
piéton) pour aller du carrefour s au carrefour t.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Degrés,Chemins, Circuits, Cycles

Accessibilité
Dans un graphe, orienté ou non, on dit que le sommet t est acces-
sible à partir du sommet s s’il existe une chaı̂ne menant de s à t.

Connexité
Un graphe non orienté est connexe si chaque sommet est accessible
à partir de n’importe quel autre.

Forte connexité
Un graphe orienté est fortement connexe quand chaque sommet
est accessible à partir de n’importe quel autre.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Degrés,Chemins, Circuits, Cycles

Circuit de longueur n
Un chemin de longueur n ≥ 1 dont le départ et l’arrivée coı̈ncident
s’appelle un circuit de longueur n; en particulier un circuit de
longueur 1 est une boucle.

Cycle de longueur n
Une chaı̂ne de longueur n ≥ 1 dont le départ et l’arrivée coı̈ncident
s’appelle un cycle de longueur n.

Un circuit (ou cycle) qui passe une fois et une seule par toutes les
arêtes d’un graphe est dit eulérien. S’il passe une fois et une
seule par tous les sommets du graphe, il est dit hamiltonien.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Matrice d’adjacence

Matrice d’adjacence
C’est une matrice carrée A à coefficients entiers dont les lignes,
comme les colonnes, sont repérées par les sommets du graphe. Le
coefficient A[s, t] est égal au nombre d’arcs (ou d’arêtes) admettant
s pour début et t pour fin.

Remarque
La matrice d’adjence d’un graphe non orienté est toujours
symétrique.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Matrice d’adjacence

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres

Dans un n-cube, il y a beaucoup de façons d’aller d’un point à


un autre, dans un arbre, au contraire, il n’y en a qu’une et cette
propriété est riche de conséquences.
Définition
Un arbre est un graphe non orienté connexe sans cycles simples.
Une forêt est un graphe non orienté sans cycles simples.

Un cycle est simple s’il ne contient pas deux fois la même arête.

Un arbre n’a ni boucle, ni arêtes parallèles.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres

Propriété caractéristique des arbres


☞ Dans un arbre, si l’on se donne deux sommets s et t
quelconques, il existe toujours une chaı̂ne élémentaire menant
de s à t et il n’y en a qu’une seule.
☞ Réciproquement, un graphe non orienté qui possède cette
propriété est un arbre.

Propriété
Un graphe non orienté qui possède un cycle possède deux sommets
liés par deux chaı̂nes élémentaires différentes.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres

Définition
Dans un arbre on peut définir la distance qui sépare deux sommets;
c’est la longueur de l’unique chemin élémentaire qui les joint; on la
note d(s, t).

Le diamètre de l’arbre, est la plus grand distance qui sépare deux


sommets.
Définition
Les arêtes d’un arbre s’appellent des branches et les sommets qui
sont au bout des branches s’appellent des feuilles.

Plus précisément, une feuille est un sommet dont le degré est égal
à 1. Les sommets qui ne sont pas des feuilles s’appellent des
noeuds.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres

Un arbre a toujours au moins une feuille. Un arbre qui n’a aucun


sommet est l’arbre vide.
Dans nos applications, on utilise le plus souvent des arbres dans
lesquels un sommet joue un rôle particulier.
On appelle ce sommet la racine de l’arbre et un arbre muni d’une
racine s’appelle un arbre enraciné.

Un arbre enraciné est un couple (A, s) dans lequel A est un arbre


et s un sommet de l’arbre.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres

Au départ, un arbre n’est pas un graphe orienté. Cependant, le


fait de l’enraciner (choisir une racine), va le munir d’une orientation
naturelle.
Soit A un arbre dont la racine est notée R. Le niveau d’un sommet
s est d(R, s), la distance de s à la racine. La hauteur de l’arbre A
est le niveau le plus haut atteint par un sommet.

Convention
Par convention, on dessine un arbre enraciné en plaçant d’abord la
racine tout en haut, puis les sommets de niveau 1 et en dessous les
sommets de niveau 2, etc.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres

Dorénavant, nos arbres enracinés seront orientés de façon que les


branches aient pour début l’extrémité de faible niveau et comme fin
celle de niveau plus élevé. Cette convention est suffisamment claire
pour qu’on n’ait pas besoin de dessiner les flèches : elles descendent.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres

On dit que le sommet s est le père du sommet t quand s et t sont


respectivement début et fin d’une branche orientée; on dit aussi que
t est un fils de s.

Les ancêtres du sommet t sont tous les sommets du chemin


élémentaire qui joint R à t; si s est un ancêtre de t, on dit que
t est un descendant de s.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres binaires

n-arbre
Si chaque noeud d’un arbre A possède au plus n fils, on dit que A
est un n-arbre; lorsque n = 2, on parle d’arbre binaire.

Les arbres binaires sont les arbres dont les noeuds n’ont jamais plus
de deux fils et dont les fils, quand il y en a deux, sont ordonnés : il
y a un fils aı̂né et un fils cadet, l’aı̂né passant avant le cadet !

Quand on dessine deux fils issus d’un noeud, on convient de


toujours placer à gauche le fils aı̂né et à droite le fils cadet.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres binaires

Numéro binaire
Une particularité remarquable des arbres binaires est qu’on a la pos-
sibilité de représenter chaque sommet au moyen d’un mot binaire
qui indique la position du sommet dans l’arbre. Nous appellerons ce
mot binaire le numéro binaire du sommet.

Méthode pratique pour trouver le numéro binaire


On part de la racine avec le mot sans lettre et on descend jusqu’au
sommet dont on cherche le numéro binaire. A chaque fois qu’on
quitte un sommet on rajoute un bit à droite du mot : si l’on descend
vers un fils aı̂né le bit vaut 0, si c’est un fils cadet le bit vaut 1, enfin
si le sommet n’a qu’un seul fils, le bit est égal à 0.

M. L. BALDE INFO245 : Mathématiques pour l’Informatique


Arbres binaires

M. L. BALDE INFO245 : Mathématiques pour l’Informatique

Vous aimerez peut-être aussi