76
MUSTAPHA KCHIKECH Introduction à la théorie des graphes Cours et exercices Filière Master MatMode 2017-2018

Introduction à la théorie des graphes

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction à la théorie des graphes

MUSTAPHA KCHIKECH

Introduction à la théorie

des graphes

Cours et exercicesFilière Master

MatMode2017-2018

Page 2: Introduction à la théorie des graphes

Table des matieres

Introduction v

1 Concepts fondamentaux 1

1.1 Presentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.2 Histoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Definitions et notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.2.1 Adjacence, voisinage, degre . . . . . . . . . . . . . . . . . . . . . . 5

1.2.2 Representation d’un graphe . . . . . . . . . . . . . . . . . . . . . . 6

1.2.2.1 Representation graphique . . . . . . . . . . . . . . . . . . 6

1.2.2.2 Representation algorithmique . . . . . . . . . . . . . . . . 6

1.3 Proprietes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.3.1 Lemme des poignees de main . . . . . . . . . . . . . . . . . . . . . 8

1.3.2 Isomorphisme de graphes . . . . . . . . . . . . . . . . . . . . . . . 10

1.3.3 Sous-graphe et Graphe partiel . . . . . . . . . . . . . . . . . . . . . 11

1.3.4 Operations sur les graphes . . . . . . . . . . . . . . . . . . . . . . . 12

1.3.5 Quelques classes de graphes particulieres . . . . . . . . . . . . . . . 13

2 Chemin, Cycle et Connexite 15

2.1 Chemin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.2 Connexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

Page 3: Introduction à la théorie des graphes

ii TABLE DES MATIERES

2.3 Distance et diametre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.4 Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.5 Graphe biparti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3 Connectivite, Arbres 25

3.1 Points d’articulations, Isthmes . . . . . . . . . . . . . . . . . . . . . . . . 25

3.2 k-connexe, k-arete-connexe . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.3 Arbres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.4 Arbre couvrant d’un graphe . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4 Graphes Euleriens et Hamiltoniens 39

4.1 Graphes Euleriens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.1.1 Propriete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

4.1.2 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.1.3 Algorithme de Fleury . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.1.4 Exercices d’applications . . . . . . . . . . . . . . . . . . . . . . . . 44

4.2 Graphes Hamiltoniens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.2.1 Exemple de problemes . . . . . . . . . . . . . . . . . . . . . . . . . 47

4.2.2 Conditions necessaires . . . . . . . . . . . . . . . . . . . . . . . . . 48

4.2.3 Conditions suffisantes . . . . . . . . . . . . . . . . . . . . . . . . . 50

5 Colorations de graphes 53

5.1 Presentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

5.1.1 Le theoreme des quatre couleurs . . . . . . . . . . . . . . . . . . . 53

5.1.2 Historique du probleme . . . . . . . . . . . . . . . . . . . . . . . . 54

5.1.3 Modelisation par les graphes . . . . . . . . . . . . . . . . . . . . . 54

5.2 Definitions et proprietes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.2.1 Coloration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.2.2 Proprietes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.3 Quelques resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

Page 4: Introduction à la théorie des graphes

TABLE DES MATIERES iii

5.4 Coloration de graphe planaire . . . . . . . . . . . . . . . . . . . . . . . . . 61

6 Exercices 65

Page 5: Introduction à la théorie des graphes

iv TABLE DES MATIERES

Page 6: Introduction à la théorie des graphes

Introduction

Ce document est le support du cours introduction a la theorie des graphes. Il presente

des notions de base ou plutot elementaire sur la theorie des graphes. En effet, une in-

troduction presentant l’histoire du l’evolution de cette discipline et des definitions utiles

pour la comprehension du cours sont presentees au premier chapitre. Ensuite le deuxieme

chapitre est consacre a des proprietes topologiques des graphes et dans le reste des cha-

pitres, certaines proprietes fondamentales caracterisants les graphes sont donnees.

L’objectif est d’offrir aux etudiants des nouvels outils combinatoires et mathematiques

permettant a la modelisation et meme la resolution de nombreux problemes.

Notons que ce document est un support pedagogique du module introduction a la

theorie des graphes destine principalement aux etudiants du master MatMod semestre 2

de la Faculte Poly-disciplinaire de Safi, universite cadi Ayyad.

Page 7: Introduction à la théorie des graphes

vi Introduction

Page 8: Introduction à la théorie des graphes

Chapitre 1

Concepts fondamentaux

1.1 Presentation

1.1.1 Motivation

Depuis longtemps, les mathematiques ont connu des problemes dont l’enonce etait simple

a presenter, en revanche leur resolution n’etait pas evidente et necessitait de nouvels outils

pour pouvoir les aborder.

— Probleme des ponts de Konigsberg (1736) :

La ville de Konigsberg (Kaliningrad) comprenait 4 quartiers, separes par un fleuve.

7 ponts permettent de relier ces quartiers. Les habitants de Konigsberg se deman-

daient s’il etait possible de faire une promenade qui emprunte chacun des sept

ponts une fois et une seule (et revient a son point de depart) ?

— Probleme du parcours du cavalier (1759)

Un cavalier peut-il parcourir les 64 cases de l’echiquier une fois et une seule, en

partant de n’importe laquelle et peut-il revenir au point de depart ?

— Probleme des quatre couleurs (1852)

Peut-on colorer toute carte geographique de sorte que deux regions voisines soient

de couleurs differentes ?

La theorie des graphes constitue l’une des principales branches des mathematiques discretes

Page 9: Introduction à la théorie des graphes

2 Concepts fondamentaux

Figure 1.1 – Ponts de Konigsberg, Parcours du cavalier, Carte geographique

et de l’informatique fondamentale. Depuis le debut du 20eme siecle, elle s’est developpee

dans diverses disciplines en mathematiques,en informatique, en cryptographie, en sciences

sociales, en biologie, en chimie,... De maniere generale, la theorie des graphes peut etre

consideree comme un outil de modelisation permettant de representer une structure d’un

objet complexe en exprimant les relations entres ses elements.

Autrement, la theorie des graphes mis au point un ensemble des techniques et outils

mathematiques permettent de demontrer des proprietes, d’en deduire des methodes de

resolution et des algorithmes. En particulier, il permet de representer de nombreuses si-

tuations rencontrees dans des applications faisant intervenir des mathematiques discretes

et necessitant une solution informatique par exemple en reseaux de telecoms, Circuits

electriques, reseaux de transport, ordonnancement d’un ensemble de taches,...

En resume, la theorie des graphes peut etre consideree comme une methode de pensee

ou un moyen de modelisation qui permet l’etude d’une grande variete de problemes.

1.1.2 Histoire

L’histoire de la theorie des graphes a commence par l’etude de certains problemes, tels

que : Le probleme des ponts de Konigsberg, resolu par Euler au 1736, la marche du

cavalier sur l’echiquier le celebre probleme de la coloration des cartes geographiques

(connu aussi par le theoreme des 4 couleurs).

— 1847 Kirchhoff (1824-1887) developpa la theorie des arbres (analyse de circuits

electriques).

Page 10: Introduction à la théorie des graphes

1.1 Presentation 3

— 1860 Cayley (1821-1895) decouvrit la notion d’arbre (enumeration des isomeres

satures des hydrocarbures de types CnH2n+2).

— 1859 Hamilton (1805-1865) Existence de chemins hamiltoniens.

— 1879 enonce du probleme des 4 couleurs (Mobius (1790-1868), Morgan (1806-1871),

Cayley, solution prouvee en 1976.

— 1936 Koning, le premier ouvrage sur les graphes.

— A partir de 1946 le developpement intense de la theorie des graphes grace a des

chercheurs comme Kuhn, Ford, Fulkerson, Roy, Berge et...

— 1958 Berge, l’ouvrage ”Theorie des graphes et ses applications” donna naissance a

l’ere moderne de la theorie des graphes.

Page 11: Introduction à la théorie des graphes

4 Concepts fondamentaux

Page 12: Introduction à la théorie des graphes

1.2 Definitions et notations 5

1.2 Definitions et notations

1.2.1 Adjacence, voisinage, degre

— Deux sommets u et v sont adjacents ou voisins si et seulement si (u, v) est

une arete dans E.

— Deux aretes sont adjacentes si et seulement si elles ont une extremite

commune.

— Soit v un sommet de G, on appelle voisinage de v l’ensemble des sommets

adjacents a v. Il est note N(v).

— Le degre d’un sommet v est le nombre de voisins de v. Il est note deg(v)

ou d(v). Autrement, deg(v) = |N(v)|.

— De meme, le degre d’un sommet v est le nombre d’aretes incidentes a v.

— Un sommet de degre nul est dit isole.

— Le degre minimum d’un graphe G est note δ(G).

— Le degre maximum d’un graphe G est note ∆(G).

— Si v est un sommet d’un graphe G d’ordre n, alors

0 ≤ δ(G) ≤ deg(v) ≤ ∆(G) ≤ n− 1

— Un graphe G = (V,E) est dit oriente si chaque element de E, appele arc,

est oriente, munies d’un sens et defini par son origine et son extremite.

— Pour un arc (vi, vj) de E, le sommet vi est son extremite initiale, et le

sommet vj son extremite finale.

— Une boucle est une arete ou arc de la forme (x, x).

— Une arete ou un arc (vi, vj) est multiple, si elle correspond a plusieurs

aretes ou arcs ayant vi comme extremite initiale et vj comme extremite

finale, dans ce cas la, on parle d’un multigraphe.

— Graphe simple est un graphe non oriente, sans boucle et non multiple. En

generale, le mot graphe designe un graphe simple.

Definition 1.

Page 13: Introduction à la théorie des graphes

6 Concepts fondamentaux

1.2.2 Representation d’un graphe

1.2.2.1 Representation graphique

Un graphe est represente par un dessin sur un plan ou les sommets sont representes par

des points ou des petits cercles, les aretes sont representees par des lignes.

Dans un graphe oriente, les arcs sont representes a l’aide d’une fleche. la representation

d’un graphe par un dessin n’est pas unique.

Exemple :

— G1 = (V1, E1) avec V1 = {1, 2, 3, 4, 5} et E1 = {(1, 2), (2, 3), (3, 4), (4, 5), (5, 1)}

— G2 = (V2, E2) avec V2 = {a, b, c, d, e} et E2 = {(a, c), (a, d), (b, d), (b, e), (c, e)}

Figure 1.2 – Graphe simple oriente et multigraphe oriente avec des boucles

1.2.2.2 Representation algorithmique

En algorithmique, les graphes peuvent etres consideres comme une structure de donnees.

C’est pourquoi, il est fondamental de s’interesser a la maniere de les representer en vue

de leurs manipulations algorithmiques. Plusieurs modes de representation peuvent etre

envisages selon la nature des traitements que l’on souhaite appliquer au graphe considere.

1. Representation par matrice d’adjacences.

2. Representation par matrice d’incidences.

Representation par matrice d’adjacences : La matrice d’adjacence d’un graphe

simple G = (V,E) d’ordre n est la matrice M = (mij)1≤i,j≤n de dimension n × n telle

Page 14: Introduction à la théorie des graphes

1.2 Definitions et notations 7

que

mij =

1, si (i, j) ∈ E (c-a-d (i, j) est un arc) ;

0, sinon.

Le graphe simple non oriente suivant

a pour matrice d’adjacences

0 0 1 1 0

0 0 0 1 1

1 0 0 0 1

1 1 0 0 0

0 1 1 0 0

Le graphe oriente suivant

1

2

34

5

a pour matrice d’adjacences

0 1 0 1 0

0 0 0 0 0

1 1 0 0 0

0 1 1 0 0

1 0 1 1 0

Representation par matrice d’incidences : Soit G = (V,E) un graphe sans boucle

de n sommets etm arcs. la matrice d’incidence deG est la matriceM = (mij)1≤i≤n; 1≤j≤m

Page 15: Introduction à la théorie des graphes

8 Concepts fondamentaux

telle que

mij =

1, si l’arc j arrive au sommet i ;

−1, si l’arc j sort du sommet i ;

0, sinon.

Le graphe suivant

1

2

34

5

a pour matrice d’incidences

−1 −1 1 1 0 0 0 0 0

1 0 0 0 1 1 0 0 0

0 0 −1 0 −1 0 1 1 0

0 1 0 0 0 −1 −1 0 1

0 0 0 −1 0 0 0 −1 −1

1.3 Proprietes

1.3.1 Lemme des poignees de main

Le theoreme suivant est considere comme etant le premier resultat publie en theorie des

graphes. Il a ete observe par le mathematicien suisse Leonhard Euler en 1736. Aujour-

d’hui, il est connu sous le nom du lemme des poignees de main (Handshaking Lemma).

Page 16: Introduction à la théorie des graphes

1.3 Proprietes 9

Si G = (V,E) est un graphe de taille m, alors

∑v∈V

deg(v) = 2m

Theoreme 1.

Preuve. Il suffit de remarquer que dans la sommation∑v∈V

deg(v) une arete e = (v, u) ∈

E est comptee exactement deux fois, une fois dans deg(v) et une fois dans deg(u).

Le nombre de sommets de degre impair dans un graphe est pair.

Corollaire 1.

Preuve. Exercice.

Exemples et exercices

1. Existe-t-il un graphe dont les sommets ont pour degre 1,2,2,3,3 ? Meme question

avec la suite 1,1,2,3,3.

2. Un graphe G d’ordre 15 et de taille 20 possede 14 sommets de degre x et un sommet

de degre y. donner les valeurs de x et de y.

3. Montrer que si G est un graphe d’ordre n et de taille m alors δ(G) 62m

n6 ∆(G).

4. Si n est l’ordre d’un graphe G et m est son nombre d’aretes alors m ≤ n(n− 1)

2.

5. Montrer que tout graphe non trivial a au moins deux sommets de meme degre.

6. Soit k un entier, k > 2. Un odd-graph Ok est un graphe dont les sommets sont

les parties a k − 1 elements de l’ensemble {1, 2, · · · , 2k − 1}, deux sommets etant

adjacents lorsque les sous ensembles correspondants sont disjoints.

(a) Determiner l’ordre de ce graphe, le degre de chaque sommet et le nombre

d’aretes de ce graphe.

(b) Dessiner O2 et O3.

Page 17: Introduction à la théorie des graphes

10 Concepts fondamentaux

1.3.2 Isomorphisme de graphes

Soient G1 = (V1, E1) et G2 = (V1, E2) deux graphes.

On dit que G1 et G2 sont isomorphes, et on ecrit G1 ' G2, s’il existe une

bijection ϕ : V1 → V2 telle que pour tout couple de sommets u, v ∈ V1,

(u, v) ∈ E1 ⇔ (ϕ(u), ϕ(v)) ∈ E2

Definition 2.

Autrement dit : Deux graphes sont isomorphes si ce sont les memes graphes, dessines

differemment, ou on peut les etiqueter avec les memes etiquettes de sorte que chaque

sommet ait exactement les memes voisins dans les deux graphes.

Exemple : Les trois graphes suivants sont isomorphes.

1 2

34

1

2

34

1

2

3

4

Si deux graphes G1 et G2 sont isomorphes, alors ils ont le meme ordre, meme

taille et les degres des sommets de G1 sont les memes que les degres des sommets

de G2.

Theoreme 2.

Preuve. Voir TD.

La reciproque n’est pas toujours vraie.

Remarque 1.

Page 18: Introduction à la théorie des graphes

1.3 Proprietes 11

Exemple : Les deux graphes suivants ne sont pas isomorphes.

1 2 3

45

6

7 8

a b c

d

e

f

g h

Exercice : Dessiner des graphes non isomorphes d’ordre 4.

1.3.3 Sous-graphe et Graphe partiel

Soient G = (V,E) un graphe et X un sous ensemble de sommets de V .

— Le graphe GX = (X,EX) est dit sous-graphe de G si et seulement si

EX ⊂ E. Si EX est forme de toutes les aretes de G ayant leurs deux

extremites dans X alors GX = (X,EX) est un sous-graphe induit de G.

— Le graphe GX = (X,EX) est dit graphe partiel de G, si X = V et EX ⊂ E.

Autrement dit, on obtient GX en enlevant une ou plusieurs aretes au

graphe G.

Definition 3.

Exemple :

e

e 2

e 3e 4

e 5e 6

e 7

v4

v3

v1 2(a)

v1

v5

e

e 2

e 3e 4

e 5

v4

v3

v21v

(b)1

v5

e

e 2e 5e 6

e 7

v5

v3

1 v

(c)2v1

Figure 1.3 – (a) : Un graphe G ; (b) : Graphe partiel de G ; (c) : Sous-graphe de G.

Page 19: Introduction à la théorie des graphes

12 Concepts fondamentaux

1.3.4 Operations sur les graphes

— Le complementaire d’un graphes G = (V,E) est le graphe

G = (V, V × V \ E)

— L’union de deux graphes G1 = (V1, E1) et G2 = (V1, E2) est le graphe

G1 ∪G2 = (V1 ∪ V2, E1 ∪ E2)

— L’intersection de deux graphes G1 = (V1, E1) et G2 = (V1, E2) est le

graphe

G1 ∩G2 = (V1 ∩ V2, E1 ∩ E2)

— Le produit cartesien de deux graphes G1 = (V1, E1) et G2 = (V1, E2) est

le graphe G1�G2 = (V1 × V2, E) t.q. ((x, y), (t, z)) ∈ E si et seulement si

(x = t et (y, z) ∈ E2) ou (y = z et (x, t) ∈ E1).

Definition 4.

Exemple :

— Un graphe et son complementaire :

— Deux graphes et leur union :

Page 20: Introduction à la théorie des graphes

1.3 Proprietes 13

1

2

34

5

6

3 4

5

1

2

34

5

6

— Deux graphes et leur intersection :

1

2

34

5

6

3 4

5

5

3 4

— Deux graphes et leur produit cartesien :

c

a

b

c1

a1

b1

a2 a3 a4 a5 a6

b2 b3 b4 b5 b6

c2 c3 c4 c5 c6

1.3.5 Quelques classes de graphes particulieres

— Un graphe complet est un graphe ou chaque sommet est relie a tous les autres. Un

graphe complet d’ordre n est note Kn.

— On appelle une clique un sous-graphe complet d’un graphe G.

— Dans un graphe G = (V,E), un ensemble S ⊂ V est dit stable si deux sommets

distincts de S ne sont jamais adjacents. On note α(G) le cardinal maximum d’un

stable de G (nombre de stabilite).

— Un graphe est regulier si tout ses sommets ont le meme degre.

— Autrement, un graphe G = (V,E) est regulier si et seulement si ∀x, y ∈ V, deg(x) =

deg(y) et δ(G) = ∆(G).

Page 21: Introduction à la théorie des graphes

14 Concepts fondamentaux

1

v2

v

vv

v1

v2

v

v1

v7 v3

v5

v

(III)

v

v

v

v

4

5

6

37

8

10

v9

v8

10

(I) (II)

Figure 1.4 – (I) : Un graphe G ; (II) : Une clique de G ; (III) : Un stable de G.

— Un graphe est k-regulier si tout ses sommets sont de degre k.

— Autrement, un grapheG = (V,E) est k-regulier si et seulement si ∀x, y ∈ V, deg(x) =

deg(y) = k et δ(G) = ∆(G) = k.

— Un graphe complet Kn est un graphe (n− 1)-regulier.

— Un graphe k-regulier de k + 1 sommets est un graphe complet Kk+1.

— Un graphe 3-regulier est appele graphe cubique. Exemple : le graphe complet K4,

le graphe de Petersen.

1

2

34

Le graphe K4 et le graphe de Petersen

Page 22: Introduction à la théorie des graphes

Chapitre 2

Chemin, Cycle et Connexite

2.1 Chemin

Une chaıne allant d’un sommet x vers un sommet y est une suite ou une sequence

finie de n sommets (x0, x1, ..., xn) tels que x = x0, y = xn et pour tout i dans

{0, 1, · · · , n− 1}, xi et xi+1 sont adjacents.

Les sommets x0 et xn sont les extremites de la chaıne et x1, ..., xn−1 sont les

sommets internes de la chaıne.

Dans le cas d’un graphe oriente, une chaıne est designee par un chemin.

Definition 5.

— La longueur d’une chaıne est le nombre d’aretes de la suite (x0, x1, ..., xn).

— Une chaıne est dite simple si une arete est presente au plus une fois.

— Une chaıne est dite elementaire si elle ne rencontre pas deux fois le meme

sommet. Autrement, (x0, x1, ..., xn) est une chaıne elementaire si xi 6= xj

pour tout i 6= j, avec i, j ∈ {0, 1, · · · , n}.

Propriete 1.

Page 23: Introduction à la théorie des graphes

16 Chemin, Cycle et Connexite

Entre deux sommets x et y, il est possible d’avoir plusieurs chaınes reliant x a

y.

Remarque 2.

Si G est un graphe contenant une chaıne allant d’un sommet x vers un sommet

y alors G contient une chaıne elementaire allant du sommet x vers le sommet y.

Theoreme 3.

Preuve. Soient x et y deux sommets de G. Parmi les chaınes reliant x a y, prenons

la plus courte chaıne (longueur minimale) (x = x0, x1, ..., xn = y). Supposons que cette

chaıne n’est pas elementaire, alors il existent i, j avec 0 ≤ i < j ≤ n t.q. xi = xj. Ainsi, la

chaıne (x = x0, x1, ..., xn = y) peut etre ecrite (x = x0, x1, ..., xi, xi+1, · · · , xj , xj+1, · · · =

y). Si on supprime les sommets xi+1, · · · , xj de cette chaıne, on obtient une nouvelle

chaıne (x = x0, x1, ..., xi = xj , xj+1, · · · = y) reliant x a y mais de longueur inferieur.

Contradiction.

Dans la suite, on parlera le plus souvent d’un chemin, sans specifier qu’il est une

chaıne, simple ou elementaire, la distinction dependant de la nature du graphe

considere.

Remarque 3.

Dans un graphe G d’ordre n tout chemin est de longueur au plus n − 1 et le

nombre de chemins est fini.

Proposition 1.

Preuve. Dans un chemin chaque sommet est visite au plus une fois. Autrement, dans

un chemin le nombre maximal de sommets visites ne depasse pas n et le nombres d’aretes

Page 24: Introduction à la théorie des graphes

2.1 Chemin 17

empruntees n’excede pas n− 1. Un chemin de longueur p est un chemin compose d’une

suite de p + 1 sommets differents. Le nombre de chemins de longueur p est donc un

choix de p+1 sommets parmi n sommets c-a-d n(n− 1)(n− 2) . . . (n− p) = (p+ 1)!Cp+1n

chemins.

Le graphe chemin de longueur n, ou simplement chemin, est un graphe note

souvent Pn = (V,E) ou V = {x0, x1, . . . , xn} et E = {(xi, xi+1)\0 6 i 6 n− 1}

ou tous les sommets sont distincts.

Definition 6.

Exemple :

1 2 3

45

6

7 8

1 2 3

45

6

7 8

1 2 3

45

6

7 8

— (1, 2, 5, 3, 2, 5, 2, 4) est une chaıne reliant 1 a 4.

— (1, 2, 5, 3, 6, 8, 7, 4) est un chemin, chaıne simple et elementaire, reliant 1 a 4.

— (1, 2, 4) est un chemin, chaıne simple et elementaire, reliant 1 a 4.

Un graphe chemin de longueur 6 et d’ordre 7

Page 25: Introduction à la théorie des graphes

18 Chemin, Cycle et Connexite

2.2 Connexite

Un graphe G = (V,E) est dit connexe (fortement connexe dans le cas oriente)

si pour tout couple de sommets (x, y) de V , il existe un chemin reliant ces deux

sommets.

Definition 7.

— La relation : xRy ⇔

x = y

il existe un chemin joignant x a y.

est une relation d’equivalence (reflexive, symetrique, transitive). Ses

classes d’equivalence forment une partition de V .

— Les sous-graphes de G engendres par chaque classe d’equivalence sont

appeles composantes connexes (composantes fortement connexes dans le

cas oriente) de G. Chaque composante connexe est un graphe connexe.

Remarque 4.

Exemple :

(1)

(3)

(1) : graphe connexe (3) : graphe non connexe ayant deux composantes connexes

La proposition suivante donne un lien entre la connexite et le nombre d’aretes d’un

graphe.

Tout graphe G d’ordre n connexe contient au moins n− 1 aretes.

Proposition 2.

Page 26: Introduction à la théorie des graphes

2.3 Distance et diametre 19

Preuve. Remarquer que si tous les sommets de G sont de degre au moins 2, on a

2m =∑

x∈V (G)

deg(x) > 2n. Ainsi la taille de G depasse n− 1 aretes.

Il reste a traiter le cas de graphes contenant au moins un sommet de degre 1. La propo-

sition peut se montrer par recurrence sur n. Pour n = 1 le resultat est trivial.

Supposons la proposition prouvee sur les graphes d’ordre au plus n. Soit G un graphe

d’ordre n + 1 et x un sommet de G de degre 1. Le sous graphe induit H est un graphe

d’ordre n. H est connexe car G est connexe et si un chemin reliant deux sommets u et

v de H passe par le sommet x alors deg(x) = 2 contradiction. Ainsi, par hypothese de

recurrence, la taille de H depasse n − 1 aretes. Par ailleurs, G est connexe et possede

un sommet et une arete de plus que H. En conclusion, G contient au moins n aretes.

La reciproque n’est pas toujours vraie.

Remarque 5.

2.3 Distance et diametre

La distance entre deux sommets x et y d’un graphe G, notee dG(x, y) ou sim-

plement d(x, y) est la longueur du plus court chemin entre x et y.

S’il n’y a pas de chemin entre x et y on considere que d(x, y) =∞.

Definition 8.

Exercice : Verifier que la distance dans un graphe est une metrique dans V (G).

On appelle diametre d’un graphe G = (V,E), note D(G), le maximum des

distances entre toutes les paires de sommets de G.

D(G) = maxx,y∈V

d(x, y)

Definition 9.

Page 27: Introduction à la théorie des graphes

20 Chemin, Cycle et Connexite

Exemple : Les deux graphes suivants sont de diametre 2.

2.4 Cycles

— Si, dans un graphe, un sommet est a la fois extremite initiale et finale d’un

chemin, alors ce chemin est appele cycle. Dans le cas oriente, on dit qu’il

forme un circuit.

— On appelle cycle elementaire, un cycle qui n’utilise pas deux fois le meme

sommet (excepte bien entendu le sommet initial qui coıncide avec le som-

met final).

— On utilise souvent cycle pour designer un cycle elementaire. La longueur

d’un cycle est le nombre d’aretes de ce cycle. Un graphe est acyclique si il

ne possede aucun cycle.

— Le graphe cycle de longueur n, ou simplement cycle, est un

graphe note souvent Cn = (V,E) ou V = {x0, x1, . . . , xn} et

E = {(x0, xn)} ∪ {(xi, xi+1)\0 6 i 6 n− 1} ou tous les sommets sont dis-

tincts.

— On appelle maille (girth en anglais) d’un graphe G, notee g(G) la taille

du plus petit cycle dans G. Si G est un graphe acyclique alors g(G) =∞.

Si g(G) 6= 3 alors on dit que G est graphe sans triangle.

Definition 10.

Page 28: Introduction à la théorie des graphes

2.4 Cycles 21

texte en blanc

Exemple :

1 2 3

45

6

7 8

1 2 3

45

6

7 8

1 2 3

45

6

7 8

— (1, 2, 3, 5, 7, 4, 1) est un cycle de longueur 6. (3, 6, 8, 7, 4, 1, 2, 3) est un cycle de lon-

gueur 7. (5, 7, 8) est un cycle de longueur 3 (un triangle).

— La maille de ce graphe est 3.

1 2 3

7 4

6 5

Le 1er graphe est un cycle de longueur 7 et de maille 7. La maille du 2eme resp. du

3eme graphe est 5 resp. ∞

Page 29: Introduction à la théorie des graphes

22 Chemin, Cycle et Connexite

Si G est un Graphe tel que δ(G) > 2 alors G contient un cycle de longueur au

moins δ(G) + 1.

Proposition 3.

Preuve. Soit Pk = x0 · · ·xk un chemin de longueur maximale dans G. Comme δ(G) > 2

prenons un sommet x 6= xk−1 et voisin de xk. Si x n’est pas un sommet de Pk alors la

longueur du chemin x0 · · ·xkx est superieure a celle du Pk contradiction. Par suite, x = xi

avec 0 6 i 6 k − 2 et xixi+1 · · ·xkxi est un cycle dans G d’ordre superieur ou egal a

δ(G) + 1.

Tout graphe contient un cycle verifiant g(G) 6 2diam(G) + 1.

Proposition 4.

Preuve. Si la maille de G est g(G) alors il existe un cycle C dans G de taille g(G).

Supposons que g(G) > 2diam(G) + 2 alors il existe deux sommets x et y dans C tels

que dC(x, y) = diam(G) + 1 c-a-d x et y sont relies par un chemin P1 de longueur

diam(G) + 1. Comme dG(x, y) 6 diam(G), il existe donc un chemin P2 de longueur

inferieure a diam(G) reliant x et y et dont les sommets internes n’appartiennent pas a

C. Ainsi, P1 ∪ P2 donne un cycle de taille inferieure a 2diam(G) + 1 contradiction.

2.5 Graphe biparti

Un graphe G = (V,E) est biparti si l’ensemble de ses sommets peut etre par-

titionne en deux sous-ensembles disjoints X et Y tel que chaque arete de E a

une extremite dans X et l’autre dans Y .

Definition 11.

Exemple :

Page 30: Introduction à la théorie des graphes

2.5 Graphe biparti 23

Un graphe G est biparti si et seulement si G ne contient aucun cycle de longueur

impaire.

Theoreme 4.

Preuve. Soit G un graphe biparti alors V (G) peut etre partitionne en deux sous-ensembles

disjoints X et Y tel que (x, y) ∈ E(G) ssi x ∈ X et y ∈ Y ou x ∈ Y et y ∈ X. Soit

C = x1, x2, · · · , xk, x1 un cycle de longueur k. Sans perte de generalite, supposons que

x1 ∈ X alors x2 ∈ Y et x3 ∈ X, etc. Autrement, xi ∈ X si i est impair et xi ∈ Y si i est

pair. Comme (xk, x1) ∈ E(G) et x1 ∈ X, on a xk ∈ Y . Ainsi k est pair.

Reciproquement, soit G un graphe ne contenant aucun cycle de longueur impaire. Dans

la suite, nous supposons que G est connexe sinon la meme demarche est appliquee sur

ses composantes connexes.

Soit v ∈ V (G). Posons X = {v}∪{x ∈ V (G)\d(x, v) est paire } et Y = {x ∈ V (G)\d(x, v) est impaire }.

Il est simple de verifier que X et Y forment une partition de V (G). Il reste a verifier

qu’il n’existe pas de sommets adjacent dans X ni dans Y .

Supposons que X contient deux sommets adjacents x et y. Soit P1 = (x, x1, · · · , xk, v) le

plus court chemin reliant x a v et soit P2 = (y, y1, · · · , yp, v) le plus court chemin reliant

x a v.

— Si pour tout i, j ∈ {1, · · · k}×{1, · · · p} on a xi 6= xj alors (x, x1, · · · , xk, v, yp, · · · , y1, y, x)

est un cycle dans G de longueur d(x, v)+d(y, v)+1 qui est impaire. Contradiction.

— Si P1 et P2 ont des sommets en commun c-a-d s’il existe i, j tel que xi = yj,

xi+1 = yj+1, · · · , xk = yp. Soit P ′1 = (x, x1, · · · , xi−1, xi) le chemin induit du che-

Page 31: Introduction à la théorie des graphes

24 Chemin, Cycle et Connexite

min P1 et P ′2 = (y, y1, · · · , yj−1, xi) le chemin induit du chemin P2. Remarquons

que les longueurs de P ′1 et P ′2 sont de meme parite. En effet, P1 = P ′1 ∪ P ′′ et

P2 = P ′2 ∪ P ′′ avec P ′′ = (xi+1, · · · , xk) et P1 et P2 ont une longueur paire. Ainsi,

(x, x1, · · · , xi, yj−1, · · · , y1, y, x) est un cycle dans G de longueur la somme de lon-

gueurs de P ′1, P ′2 et (x, y) qui est impaire. Contradiction.

Meme preuve pour montrer que Y ne contient pas deux sommets adjacents.

Un graphe est biparti complet si l’ensemble de ses sommets peut etre parti-

tionne en deux sous-ensembles disjoints X et Y tel que chaque sommet de X

est adjacent avec tous les sommets de Y . Si |X| = m et |Y | = n alors ce graphe

est note Km,n.

Definition 12.

Exemple :

Le 1er graphe est un K1,8 appele etoile. Le 2eme graphe est un K3,3. Le 3eme graphe

est un K3,5.

Page 32: Introduction à la théorie des graphes

Chapitre 3

Connectivite, Arbres

3.1 Points d’articulations, Isthmes

Soit G = (V,E) un graphe.

— Supprimer un sommet : Soit x un sommet de G. G − x est le sous-

graphe induit de G obtenu en supprimant x de V . Autrement, G − x =

(V \{x}, E\{(x, y) ∈ E \ y ∈ V }).

— Supprimer des sommets : Soit U ⊂ V une partie de sommets de G. G−U

est le sous-graphe induit de G obtenu en supprimant de V tous les sommets

de U . Autrement, G− U = (V \U, {(x, y) ∈ E \ x, y /∈ U}).

— Supprimer une arete : Soit e une arete de G. G − e est le graphe partiel

de G obtenu en supprimant e de E. Autrement, G− e = (V,E − e).

— Supprimer des aretes : Soit X ⊂ E une partie d’aretes de G. G − X est

le graphe partiel de G obtenu en supprimant de E tous les aretes de X.

Autrement, G−X = (V,E −X).

Definition 13.

Texte en blanc

Page 33: Introduction à la théorie des graphes

26 Connectivite, Arbres

Texte en blanc

Exemple :

11

3

2

6

5

4

G

11

3

25

4

G-6

11

3

2

6

5

4

G-(2,6)

3

25

4

G-{1,6}

11

3

2

6

5

4

G-{(1,5),(2,3),(4,3),(2,6)}

Soit G = (V,E) un graphe.

— Point d’articulation (cutvertex) : Un point d’articulation est un sommet

dont la suppression rend le graphe non connexe.

— Ensemble d’articulation (vertex-cut) : Un ensemble d’articulation est un

ensemble de sommets dont la suppression rend le graphe non connexe.

— Isthme ou un pont (bridge) : Un isthme est une arete dont la suppression

rend le graphe non connexe.

— Graphe non separable : Un graphe est dit non separable s’il ne contient

aucun point d’articulation. Exemple : un cycle d’ordre au moins 3.

— Separateur : SoitG un graphe. SoitX un ensemble de sommets ou d’aretes.

— X separe G ou X est un separateur de G si G−X est non connexe.

— Soient x et y deux sommets de G. X est un (x, y)-separateur (ou

X separe x et y) si dans G − X les deux sommets sont dans deux

composantes connexes differentes.

Definition 14.

1

2

3

4

5

6

8

7

9

Page 34: Introduction à la théorie des graphes

3.1 Points d’articulations, Isthmes 27

3, 6 et 7 sont des points d’articulations. (6, 7) est un isthme. {3, 4, 5} ensemble

d’articulation

Soit G un graphe connexe. Si e = (x, y) est un isthme alors soit G = K2 ou soit

x ou y est un point d’articulation.

Proposition 5.

Preuve. La suppression de e = (x, y) rend G non connexe. Soient G1 et G2 deux com-

posantes de G contenant respectivement x et y. Supposons que G 6= K2, alors l’ordre de

G1 ou de G2 est superieur a 2. Sans perte de generalite, supposons que |G1| > 2, alors

il existe dans G1 un sommet z 6= x qui est relie au sommet y par un chemin passant par

l’arete e (car G est connexe). Ainsi, la suppression du sommet x disconnecte G.

Soit G un graphe connexe. Un sommet x est un point d’articulation si et seule-

ment il existe deux sommets y et z differents de x tel que tout chemin reliant y

et z passe par x.

Proposition 6.

Preuve. — Si x est un point d’articulation de G alors G−x est non connexe. Ainsi,

il existe deux sommets y et z non relies par un chemin dans G− x. Comme G est

connexe, y et z sont connectes par un ou des chemins dans G qui passent forcement

par x.

— Supposons qu’il existe deux sommets y et z tels que tout chemin reliant y a z passe

par un sommet x. Ainsi, dans G−x il n’y a aucun chemin qui connecte y a z. Par

suite, x est un point d’articulation.

Tout graphe connexe non trivial contient au moins deux sommets qui ne sont

pas des points d’articulations.

Proposition 7.

Page 35: Introduction à la théorie des graphes

28 Connectivite, Arbres

Preuve. Soit G un graphe ayant au moins deux sommets. Si |G| = 2 le resultat est

trivial. Soit x et y deux sommets de G tels que dG(x, y) = diam(G). Nous allons montrer

que x et y ne sont pas des points d’articulations de G. Supposons que x est un point

d’articulation de G alors G − x est non connexe. |G| > 3 considerons z un sommet

appartenant a une composante qui ne contient pas y. Ainsi, tout chemin reliant y a z

dans G passe par x. Par suite, dG(y, z) > dG(x, y) = diam(G) contradiction. De meme

pour le sommet y.

3.2 k-connexe, k-arete-connexe

Dans cette section, nous allons presenter quelques parametres qui permettent d’evaluer

la connexite d’un graphe.

— Connectivite ou connexite (connectivity) : La connectivite κ(G) (kappa

de G) d’un graphe G = (V,E) est le nombre minimum de sommets a

supprimer pour que G devient non connexe ou reduit a un sommet.

— k-connexe (k-connected) : G est dit k-connexe si κ(G) > k. Si S designe

la famille des separateurs (des sommets) de G alors G est k-connexe si et

seulement si

κ(G) = min{|X|\X ∈ S} > k

Autrement, si G a au moins k + 1 sommets et aucun ensemble de k − 1

sommets ne le separe.

Definition 15.

Page 36: Introduction à la théorie des graphes

3.2 k-connexe, k-arete-connexe 29

— Pour tout graphe G, on a 0 6 κ(G) 6 n− 1.

— κ(G) = 0 si et seulement si G est non connexe.

— κ(G) = n− 1 si et seulement si G est complet.

— κ(G) = 1 si et seulement si G = K2 ou G est un graphe ayant des points

d’articulations.

— κ(G) > 2 si et seulement si G est un graphe non separable d’ordre au

moins 3.

Remarque 6.

— arete-Connectivite ou arete-connexite (edge-connectivity) : L’arete-

Connectivite λ(G) d’un graphe G = (V,E) est le nombre minimum

d’aretes a supprimer pour que G devient non connexe.

— k-arete-connexe (k-edge-connected) : G est dit k-arete-connexe si λ(G) >

k. Si S designe la famille des separateurs (des aretes) de G alors G est

k-arete-connexe si et seulement si

λ(G) = min{|X|\X ∈ S} > k

Autrement, si G a au moins 2 sommets et aucun ensemble de k− 1 aretes

ne le separe.

Definition 16.

— Pour tout graphe G, on a 0 6 λ(G) 6 n− 1.

— Le graphe trivial K1 ne possede pas d’isthme mais on admet que λ(K1) =

0.

Remarque 7.

Page 37: Introduction à la théorie des graphes

30 Connectivite, Arbres

λ(Kn) = n− 1.

Theoreme 5.

Preuve. — Si n = 1, on a λ(K1) = 0.

— Prenons n > 2. Si on supprime toutes les aretes incidentes d’un sommet alors Kn

devient non connexe. Ainsi λ(Kn) 6 n− 1.

Soit X le separateur de Kn tel que λ(Kn) = |X| et Kn − X est non connexe.

Posons Kn−X = G1 ∪G2 ou G1 et G2 sont deux composantes de Kn−X tels que

|G1| = k > 1 et |G2| = n−k > 1. Rappelons que dans Kn tous les sommets de G1 et

de G2 sont deux a deux adjacents, il y a donc k(n−k) aretes qui lient, dans Kn, les

sommets de G1 et les sommets de G2 autrement |X| = k(n− k). Par ailleurs, on a

(k−1)(n−k−1) = k(n−k)−(n−1) > 0 ceci donne λ(Kn) = |X| = k(n−k) > n−1.

En consequence, λ(Kn) = n− 1.

Pour un graphe G donne, le theoreme de Whitney (1932) propose une relation entre les

trois parametres κ(G), λ(G) et δ(G)

Pour tout graphe G,

κ(G) 6 λ(G) 6 δ(G)

Theoreme 6.

Preuve. — Si G est non connexe alors κ(G) = λ(G) = 0 6 δ(G).

— Si G est complet alors κ(G) = λ(G) = δ(G) = n− 1.

— Dans la suite considerons G comme etant un graphe connexe non complet. G est

non complet alors δ(G) 6 n−2. Soit x un sommet tel que d(x) = δ(G). Remarquons

que si on supprime toutes les aretes incidentes de x, G devient non connexe. Ainsi,

λ(G) 6 δ(G) 6 n− 2.

Soit X le separateur (aretes) de G tel que |X| = λ(G) 6 n − 2 et G −X est non

Page 38: Introduction à la théorie des graphes

3.2 k-connexe, k-arete-connexe 31

connexe. Posons G−X = G1 ∪G2 ou G1 et G2 sont deux composantes de G−X

tels que |G1| = k > 1, |G2| = n− k > 1 et chaque arete de X joint un sommet de

G1 a un sommet de G2.

Si chaque sommet de G1 est adjacent a tous les sommets de G2 alors |X| = k(n−k)

et on a (k − 1)(n − k − 1) = k(n − k) − (n − 1) > 0. Ceci donne λ(G) = |X| =

k(n− k) > n− 1. Contradiction car λ(G) 6 n− 2.

Il existe donc un sommet x de G1 et un autre sommet y de G2 tels que (x, y) /∈

E(G). Soit U un sous ensemble de sommets de G construit de la facon suivante :

– Soit (u, v) ∈ X, si u = x alors v ∈ U .

– Soit (u, v) ∈ X, si u 6= x avec u ∈ G1 et v ∈ G2 alors u ∈ U .

Remarquons que pour tout sommet u ∈ U , on a soit (x, u) ∈ X ou soit (u, v) ∈ X

ou v ∈ G2 avec x, y /∈ U . Ainsi, d’une part on a |U | 6 |X| et d’autre part, la

suppression de tous les sommets de U dans G est equivalent a la suppression de

toutes les aretes de X dans G. Ceci rend G non connexe. Par suite, U est un

ensemble d’articulation de G. En conclusion on a

κ(G) 6 |U | 6 |X| 6 λ(G)

L’inegalite de l’enonce du Theoreme de Whitney peut etre strict. En effet dans

le graphe suivant on a κ(G) = 1 < 2 = λ(G) < 3 = δ(G).

Remarque 8.

Le theoreme suivant presente un exemple de classe de graphe ou on a κ(G) = λ(G).

Page 39: Introduction à la théorie des graphes

32 Connectivite, Arbres

Pour tout graphe cubique G, on a κ(G) = λ(G).

Theoreme 7.

Preuve. Soit G un graphe cubique. D’apres le Theoreme de Whitney on a κ(G) 6

λ(G) 6 3.

— Si κ(G) = 0 alors G est non connexe par suite κ(G) = λ(G) = 0.

— Si κ(G) = 3 alors κ(G) = λ(G) = 3.

— Si κ(G) = 1 alors il existe un sommet x un point d’articulation dans G tel que

G−x est non connexe et comme deg(x) = 3, il existe une composante de G−x qui

contient un et un seul voisin y de x. D’ou l’arete (x, y) est un isthme de G. Par

suite κ(G) = λ(G) = 1.

— Si κ(G) = 2 alors il existe un ensemble d’articulation U = {x, y} tel que G−U est

non connexe. Soient G1 et G2 deux composantes de G− U .

– Si (x, y) ∈ E(G) alors x (resp. y) possede un et un seul voisin x′ (resp. y′) dans

G1. Il est clair que X = {(x, x′), (y, y′)} est un separateur de G. D’ou κ(G) =

λ(G) = 2.

– Si (x, y) /∈ E(G) alors soit x (resp. y) possede un et un seul voisin x′ (resp. y′)

dans G1 et deux voisins dans G2 et dans ce cas l’ensemble X = {(x, x′), (y, y′)} est

un separateur de G. Soit x possede un et un seul voisin x′ dans G1 et deux voisins

dans G2 et y possede deux voisins dans G1 et un seul voisin y′ dans G2. Dans ce cas

l’ensemble X = {(x, x′), (y, y′)} est un separateur de G. D’ou κ(G) = λ(G) = 2.

Theoreme de Menger

Deux chemins sont independants s’ils n’ont aucun sommet en commun a part

leurs extremites.

Definition 17.

Page 40: Introduction à la théorie des graphes

3.3 Arbres 33

Theoreme de Menger 1927.

Soit G un graphe. Soient x et y deux sommets non adjacents de G. La taille

minimum d’un sous ensemble de sommets separant x et y est egale au nombre

maximum de chemins deux a deux independants joignant x et y.

Theoreme 8.

Preuve. Admis.

Soit k > 2. Un graphe G est k-connexe (pour les sommets) si et seulement si

toute paire de sommets distincts de G est connectee par au moins k chemins

independants.

Corollaire 2.

Preuve. Admis.

Il existe l’analogue du resultat enonces dans le Theoreme et le Corollaire de

Menger en termes d’aretes.

Remarque 9.

3.3 Arbres

Une arete e d’un graphe G est un isthme si et seulement si e n’appartient a

aucun cycle de G.

Theoreme 9.

Preuve. Si e est un isthme dans G alors G − e est non connexe. Il existe donc deux

sommets x et y qui ne sont pas connectes dans G − x mais connectes dans G. Ainsi,

Page 41: Introduction à la théorie des graphes

34 Connectivite, Arbres

si e = (s, d) appartient a un cycle alors x et y restent connectes meme si on supprime

e. Contradiction. Reciproquement, supposons que e n’est pas un isthme alors G − e est

connexe donc les deux sommets extremites de e sont connectees par un chemin P dans

G−e. Par suite l’union de e et de P dans G forme un cycle G contenant e. Contradiction.

D’apres ce theoreme, il est possible d’avoir un graphe connexe dont toutes les

aretes sont des isthmes. Cette propriete est verifiee par une classe de graphe la

plus etudie et la plus connue dans la theorie des graphe qui sont les arbres. A

noter egalement que les arbres sont des graphes tres populaires et tres utilises

en combinatoire, en algorithmiques et en informatique.

Remarque 10.

— Un arbre est un graphe connexe sans cycle.

— Une foret est un graphe dont chaque composante connexe est un arbre.

Autrement dit, c’est un graphe sans cycle.

Definition 18.

Exemples particuliers :

— Chemins,

— Etoiles,

— Chenilles.

Arbre et une foret

Page 42: Introduction à la théorie des graphes

3.3 Arbres 35

chemin, etoile et une chenille

Un graphe G est un arbre si et seulement si tout couple de sommets est connecte

par un chemin et un seul.

Theoreme 10.

Preuve. Si G est un arbre alors G est connexe et tout couple de sommets est connecte

par au moins un chemin. Par ailleurs, supposons qu’il existe un couple de sommets

(x, y) connecte par deux chemins differents, dans se cas G contient un cycle, ce qui est

impossible. Reciproquement, si G est un graphe dans lequel tout couple de sommets est

connecte par un chemin et un seul. Alors, d’une part, G est connexe et d’autre part, G

ne peut pas contenir un cycle, autrement il y aura au moins deux sommets connectes par

deux chemins.

Un arbre d’ordre n > 2 admet au moins deux sommets pendants (ou feuilles).

Dans un arbre, en appelant sommets pendant ou feuille un sommet qui n’est

adjacent qu’a un seul sommet.

Corollaire 3.

Page 43: Introduction à la théorie des graphes

36 Connectivite, Arbres

Preuve. Le precedent theoreme permet de remarquer que tous les sommets d’un arbre

de degre au moins deux sont des points d’articulations. Toutefois, on sait qu’un graphe

connexe non trivial contient au moins deux sommets qui ne sont pas des points d’articu-

lations. D’ou le corollaire.

Si G est un arbre d’ordre n et de taille m alors m = n− 1.

Theoreme 11.

Preuve. Soit G un arbre d’ordre n et de taille m. G est donc un graphe connexe sans

cycle. Ainsi, d’une part, G est connexe implique que m > n − 1 (Voir proposition dans

chapitre 2) et d’autre part, G est acyclique (sans cycle) implique m 6 n− 1 (Voir TD2

exercice 7). D’ou le resultat.

SiG est une foret d’ordre n, de taillem et possede k composantes alorsm = n−k.

Corollaire 4.

Si G est un arbre d’ordre n > 3 ayant ni sommets de degre i alors

n1 = 2 + n3 + 2n4 + · · ·+ (∆(G)− 2)n∆(G)

Proposition 8.

Preuve.∑v∈V

deg(v) =

∆(G)∑i=1

ini = 2m = 2(n− 1) = 2

∆(G)∑i=1

ni − 2. Ceci donne n1 = 2 +

∆(G)∑i=2

(i− 2)ni.

La reciproque du precedent theoreme n’est pas toujours vrais. Autrement, Si G

est un graphe d’ordre n et de taille m tel que m = n− 1 n’implique pas que G

est un arbre. Proposer un contre exemple.

Remarque 11.

Page 44: Introduction à la théorie des graphes

3.3 Arbres 37

Pour que la reciproque du precedent theoreme soit vraie, il faut ajouter plus d’hypotheses.

Ainsi,

Soit G un graphe d’ordre n et de taille m. Si G est sans cycle et m = n−1 alors

G est un arbre.

Theoreme 12.

Preuve. Il reste a montrer que G est connexe. Supposons le contraire. Soient G1, G2,...,

Gk k > 1 composantes connexes de G ou chaque composante Gi est d’ordre ni et de

taille mi. Par ailleurs, chaque composante Gi est un arbre c-a-d G est une foret de k

composantes. Par suite, m = n− k = n− 1. D’ou, k = 1 c-a-d G est connexe.

Soit G un graphe d’ordre n et de taille m. Si G est connexe et m = n− 1 alors

G est un arbre.

Theoreme 13.

Preuve. Supposons le contraire c-a-d G est graphe connexe d’ordre n, de taille m et

m = n − 1 tel que G n’est pas un arbre. Alors G est contient au moins un cycle. Soit

G′ le graphe partiel de G obtenu en supprimant une arete de chaque cycle de G. Le

graphe G′ est donc un arbre (sans cycle et connexe) d’ordre n et de taille m′ < m. D’ou

m > m′ = n− 1. Contradiction.

Si G est un graphe d’ordre n et de taille m. Alors les proprietes suivantes sont

equivalentes :

— G connexe et G est sans cycle,

— G connexe et m = n− 1,

— G est sans cycle et m = n− 1,

Corollaire 5.

Preuve. Application immediate des precedentes theoremes.

Page 45: Introduction à la théorie des graphes

38 Connectivite, Arbres

3.4 Arbre couvrant d’un graphe

— Un arbre couvrant d’un graphe G est le sous graphe partiel de G obtenu

en supprimant tous les cycles dans G.

— Autrement dit, un arbre couvrant d’un graphe G = (V,E) est l’arbre

construit a partir des aretes de G et contient tous les sommets de G.

Definition 19.

Un graphe G admet un arbre couvrant si et seulement si G est connexe.

Theoreme 14.

Preuve. Si G admet un arbre couvrant alors G est connexe. Reciproquement, supposons

que G est connexe et soit C(G) l’ensemble des sous graphes partiels et connexes de G.

C(G) est non vide car G est un sous graphe partiel de lui meme. Soit H un sous graphe

partiel connexe de G minimal pour le nombre d’aretes. Si H contient un cycle C et e

une arete de C alors H − e est connexe et sous graphe partiel de G. Ceci contredit la

minimalite de H. Ainsi, H est un sous graphe partiel connexe sans cycle de G c-a-d H

est un arbre couvrant de G.

Page 46: Introduction à la théorie des graphes

Chapitre 4

Graphes Euleriens et

Hamiltoniens

4.1 Graphes Euleriens

Dans la definition suivante, un chemin designe une chaıne allant d’un sommet

vers un autre.

Remarque 12.

Page 47: Introduction à la théorie des graphes

40 Graphes Euleriens et Hamiltoniens

Soit G = (V,E) un graphe (ou multigraphe).

— Un chemin est dit Eulerien si il emprunte une fois et une fois seulement

chaque arete de G.

— Un cycle Eulerien est un chemin Eulerien dont les extremites coıncident.

— Un graphe Eulerien est un graphe possedant un cycle Eulerien.

— Un chemin (ou cycle) Eulerien peut bien passer plus d’une fois par un

meme sommet.

— On peut definir les memes notions pour les graphes orientes.

Definition 20.

Exemple :

1

2

3

4

5

4

6

5

3

2

1

Gauche : (1, 2, 3, 1, 4, 5, 2) chemin Eulerien. Droite : (1, 2, 3, 4, 2, 6, 5, 4, 6, 1) cycle Eulerien.

Exercice :

Est-il possible de realiser ce dessiner sans lever la craie ou le crayon ? Formuler autrement

la question.

Page 48: Introduction à la théorie des graphes

4.1 Graphes Euleriens 41

4.1.1 Propriete

Un graphe connexe est Eulerien si et seulement si tous ses sommets ont un degre

pair.

Theoreme 15.

Preuve. — Soit G un graphe connexe Eulerien. G possede donc un cycle C = (x0, x1, · · · , xm)

qui passe une fois et une seule par chaque arete de G. Par ailleurs, C peut passer

plusieurs fois par le meme sommet. Ainsi, chaque sommet xi de G peut figurer

k > 1 fois dans C. Par consequent, d(xi) = 2k.

— Reciproquement, soit G un graphe connexe dont les sommets sont tous de degre

pair. Soit P = (x0, x1, · · · , xp) la plus longue chaıne (non elementaire c-a-d on peut

passer plusieurs fois par le meme sommet) dans G ou chaque arete est empruntee

une et une seule fois. Puisque tous les sommets de G sont supposes de degre pair,

xp doit avoir x0 comme voisin autrement le chemin P ∪ (xp, xi) avec i 6= 0 est plus

long que P contradiction. Ainsi, C = (x0, x1, · · · , xp, x0) est un cycle dans G. Si

C n’est pas un cycle Eulerien dans G et comme G est connexe alors il existe dans

G une arete e = (xi, y), avec y 6= xi pour tout 0 6 i 6 p, non empruntee par C

mais incident d’un sommet de C. On aura donc un chemin (xi+1, xi+2, · · · , xi, y)

plus long que le chemin P contradiction.

Exemple et Exercice :

— Dessiner 4 graphes Euleriens (autre que les cycles) d’ordre > 5.

— Les hypercubes de dimension n sont-ils des graphes Euleriens ?

— Les graphes complets sont-ils des graphes Euleriens ?

— Dessiner quelques graphes bipartis qui sont Euleriens.

Page 49: Introduction à la théorie des graphes

42 Graphes Euleriens et Hamiltoniens

Un graphe connexe possede un chemin Eulerien si et seulement si le nombre de

sommets de degre impair est egal a 0 ou 2.

Corollaire 6.

Preuve. — Soit G un graphe connexe contenant un chemin Eulerien P = (x0, x1, · · · , xp).

Soit G′ = G ∪ (x0, xp) le graphe obtenu en ajoutant l’arete (x0, xp) a G. Ainsi,

C = (x0, x1, · · · , xp, x0) est un cycle Eulerien de G′. D’apres le theoreme precedent,

tous les sommets de G′ sont de degre pair. Comme dG′(x0) = dG(x0) + 1, le degre

de x0 dans G est impair. De meme pour le sommet xp.

— Soient x et y les seuls sommets de degre impair dans G. Soit H un graphe obtenu

en ajoutant a G un sommet z et les deux aretes (x, z) et (y, z). Il est clair que H est

un graphe connexe dont tous les sommets sont de degre pair. D’apres le theoreme

precedent, H est un graphe Eulerien possedant un cycle C passant par toutes les

aretes de H une et une seule fois. Ainsi, C−{(x, z), (z, y)} est un chemin Eulerien.

Exemple et Exercice :

— Dessiner 4 graphes possedant des chemins Euleriens d’ordre > 5.

— Les hypercubes de dimension n possedent t-ils des chemins Euleriens ?

— Les graphes complets possedent t-ils des chemins Euleriens ?

— Dessiner quelques graphes bipartis qui possedent des chemins Euleriens.

4.1.2 Application

Probleme des ponts de Konigsberg

La ville de Konigsberg (Kaliningrad) comprenait 4 quartiers, separes par un fleuve. 7

ponts permettent de relier ces quartiers. Les habitants de Konigsberg se demandaient

s’il etait possible de faire une promenade qui emprunte chacun des sept ponts une fois

et une seule (et revient a son point de depart) ?

Page 50: Introduction à la théorie des graphes

4.1 Graphes Euleriens 43

Modelisation

La figure des 7 ponts suivante

peut etre represente simplement par la figure suivante

et cette figure peut etre modelisee par le graphe suivant

C

A

B

D

Reponse

Puisque le graphe obtenu n’est pas eulerien, la reponse au probleme des 7 ponts est non.

4.1.3 Algorithme de Fleury

Algorithme de Fleury est presente sous la forme du theoreme suivant et fourni une

methode qui permet de construire un cycle Eulerien dans un graphe Eulerien.

Page 51: Introduction à la théorie des graphes

44 Graphes Euleriens et Hamiltoniens

Soit G un graphe Eulerien. L’algorithme suivant permet de construire un cycle

Eulerien dans G.

— Commencer d’un sommet x quelconque et choisir une arete incidente du

sommet x.

— Choisir au hasard les aretes qui doivent etre empruntees.

— Les aretes prioritaires sont les aretes qui ne sont pas des isthmes.

— Un isthme est choisi s’il n’existe aucune autre possibilite.

— Chaque arete traversee doit etre supprimee.

— Un sommet isole doit etre supprime.

Theoreme 16.

Preuve. Admis

Exemple et exercice : Trouver un cycle Eulerien dans le graphe suivant en appliquant

l’algorithme de Fleury.

1

2

3

6

5

4

4

6

5

3

2

1

4.1.4 Exercices d’applications

1. Supposons que le reseau des bus a Safi est organise de la maniere suivante :

— De la station ”Centre ville” partent 9 lignes.

— De la station ”Faculte” ne part qu’une seule ligne.

— De toutes les autres stations partent 2 lignes.

Est-il possible de se rendre en bus de la station ”Centre ville” a la station ”Faculte”

en empruntant une seule et une fois toutes les lignes.

Page 52: Introduction à la théorie des graphes

4.2 Graphes Hamiltoniens 45

2. On considere le plan d’un musee de cinq salles S1, S2, S3, S4 et S5. L’exterieur

du musee est designe par E. La communication entre les salles et avec l’exterieur

se fait par l’intermediaire des portes. Est-il possible pour une personne de visiter

l’ensemble des salles en traversant toutes les portes une et une seule fois ? Noter

que le visiteur peut se retrouver a l’interieur ou a l’exterieur du musee.

S1 S2

S3S4S5

E

4.2 Graphes Hamiltoniens

Soit G = (V,E) un graphe.

— Un chemin est dit Hamiltonien si il emprunte une fois et une fois seulement

chaque sommet de G.

— Un cycle Hamiltonien est un chemin Hamiltonien dont les extremites

coıncident.

— Un graphe Hamiltonien est un graphe possedant un cycle Hamiltonien.

— On peut definir les memes notions pour les graphes orientes.

Definition 21.

Page 53: Introduction à la théorie des graphes

46 Graphes Euleriens et Hamiltoniens

— Un graphe Hamiltonien est d’ordre au moins 3.

— Un graphe Hamiltonien possede toujours un chemin Hamiltonien.

— Un graphe contenant un chemin Hamiltonien n’est pas toujours Hamilto-

nien (voir exemple ci-apres).

— Les graphes complets sont Hamiltoniens.

— Un graphe Eulerien n’est pas toujours Hamiltonien (voir exemple ci-apres).

— Un graphe Hamiltonien n’est pas toujours Eulerien (voir exemple ci-apres).

Remarque 13.

Exemple :

— Le 1er graphe est Hamiltonien. Le second est un graphe contenant un chemin

hamiltonien (1,2,3,4,5,6,7,8,9,10) mais il n’est pas hamiltonien. Le 3 eme est un

graphe non Hamiltonien et ne contenant aucun chemin Hamiltonien.

53 4 61 2

911 10 813 12

1

2

3

4

7

6

5

8

9

10

— Le 1er graphe est Eulerien mais il n’est pas Hamiltonien. Le second est un graphe

Hamiltonien mais il n’est pas Eulerien.

Page 54: Introduction à la théorie des graphes

4.2 Graphes Hamiltoniens 47

4.2.1 Exemple de problemes

— Voyage ferme autour du monde (Hamilton 19 eme siecle) : Supposons que sur la

terre, representee par dodecaedre regulier (polyedre a 12 faces pentagonales et a

20 sommets), il y a 20 villes representees par les sommets du dodecaedre. On se

propose de passer une fois et une seule par chacune de ces villes et de revenir a

son point de depart, en utilisant seulement les aretes du dodecaedre. Ce probleme

revient a chercher un cycle Hamiltonien pour le graphe representant le dodecaedre.

— Probleme du parcours du cavalier (Euler 1759) : Un cavalier peut-il parcourir les 64

cases de l’echiquier une fois et une seule, en partant de n’importe laquelle et peut-il

revenir au point de depart ? Ce probleme revient a chercher un cycle Hamiltonien

pour le graphe dont les sommets representent les cases de l’echiquier et les aretes

representent les mouvements possibles qu’un cavalier peut avoir dans l’echiquier.

Theoreme (B. McKay, 1997) Il existe 13267364410532 cycles differents ! ! !

— Un voyageur de commerce doit visiter n villes x1, x2, · · · , xn donnees en passant

par chaque ville exactement une fois. Il commence par une ville quelconque (par

exemple la ville x1) et termine a la ville de depart. La distance dij entre deux

villes xi et xj est connue. Quel chemin faut-il choisir afin de minimiser la distance

parcourue ? Ce probleme revient a chercher un cycle hamiltonien dans le graphe

Page 55: Introduction à la théorie des graphes

48 Graphes Euleriens et Hamiltoniens

complet Kn construit sur l’ensemble des sommets (villes). Les aretes etant munies

des distances dij .

4.2.2 Conditions necessaires

Si G = (V,E) est un graphe Hamiltonien alors pour tout ensemble non vide

S ⊆ V on a

c(G− S) 6 |S|

ou c(G− S) est le nombre de composantes connexes de G− S.

Theoreme 17.

Preuve. Soit S ⊆ V et S 6= ∅.

— Si G− S est connexe alors c(G− S) = 1 6 |S|, le resultat est trivial.

— Supposons que c(G − S) = k > 2 c-a-d G − S = G1 ∪ · · · ∪ Gk ou Gi des com-

posantes connexes de G − S. G contient un cycle Hamiltonien C car G est un

graphe Hamiltonien. Notons, sans perte de generalite, xji ou i ∈ {1, · · · , k} et

j ∈ {1, · · · , pi} le jeme sommet de la ieme composantes connexes Gi visite par

le cycle C. Soit xpii le dernier sommet de Gi visite par C et soit yi le sommet voisin

de xpii dans le cycle C. On a yi /∈ Gi et yi n’appartient a aucune autre compo-

sante connexe Gj (1 6 j 6= i 6 k). Donc, yi ∈ S. D’ou, S ⊇ {y1, · · · , yk}. Ainsi,

|S| > |{y1, · · · , yk}| = k = c(G− S).

Ce theoreme peut etre utilise pour verifier que certains graphes ne sont pas

Hamiltoniens.

Remarque 14.

texte

texte

Page 56: Introduction à la théorie des graphes

4.2 Graphes Hamiltoniens 49

texte

Exercice : Les graphes suivants sont-il Hamiltoniens ?

La reciproque du theoreme precedent n’est pas toujours vraie.

Proposition 9.

Preuve. Le graphe de Petersen G = (V,E) n’est pas Hamiltonien portant pour tout

ensemble non vide S ⊆ V on a c(G − S) 6 |S| (a verifier en exercice). En effet, nous

allons montrer que G n’est pas Hamiltonien. Si on suppose que G est Hamiltonien alors

G contient un cycle Hamiltonien C = (x1, · · · , x10, x1). Comme G est un graphe cubique,

x1 doit etre voisin avec un et un seul sommet parmi (x2, · · · , x9) mais rappelons que la

maille du graphe de Petersen est 5. Donc x1 doit etre voisin avec un et un seul sommet

parmi (x5, x6, x7) sinon on aura des cycles de taille inferieure a 5. Pour les memes

raisons x10 doit etre voisin avec un et un seul sommet parmi (x4, x5, x6).

— Si x1 est voisin avec x5 alors on a soit (x1, x5, x4, x10, x1), soit (x1, x5, x6, x10, x1)

des cycles de taille 4 ou soit (x1, x5, x10, x1) un cycle de taille 3 dans G. Impossible.

— Si x1 est voisin avec x6 alors x10 doit etre voisin qu’avec x4 sinon on aura des

cycles de taille 3 ou de taille 4 notamment (x1, x6, x10, x1) ou (x1, x6, x10, x5, x1).

Pour les memes raisons, pour ne pas avoir des cycles de taille 3 ou 4, x2 doit etre

voisin avec x8. Finalement, on remarque que x3 est de degre 2 dans C mais il ne

pas etre voisin avec aucun sommet de G, sinon on aura des cycles de taille 3 ou 4.

Impossible.

— x1 ne peut pas etre voisin avec x7 car il suffit d’utiliser les memes arguments que

Page 57: Introduction à la théorie des graphes

50 Graphes Euleriens et Hamiltoniens

les cas precedents.

En conclusion, un graphe de Petersen n’est pas un graphe Hamiltonien.

Si G est un graphe Hamiltonien alors G est 2-connexe.

Corollaire 7.

Preuve. Soit S un separateur de G. On a c(G − S) > 2. Comme G est un graphe

Hamiltonien, d’apres le theoreme precedent, on a 2 6 c(G − S) 6 |S|. Ainsi κ(G) > 2.

Par consequent, G est 2-connexe.

4.2.3 Conditions suffisantes

Le theoreme de Dirac (1952) suivant permet de donner une condition suffisante pour

qu’un graphe soit hamiltonien.

Si G est un graphe d’ordre n > 3 tel que δ(G) >n

2, alors G est un graphe

Hamiltonien.

Theoreme 18.

Preuve. Si G = (V,E) est non connexe alors G possede au moins deux composantes

connexes G1 et G2. Supposons que |G1| 6 |G2| on a donc |G1| 6n

2et

n

26 ∆(G1) 6

n

2− 1 absurde. Par consequent, G est connexe. Puisque G est connexe, considerons

P = (x0, · · · , xk) le plus long chemin dans G. Ainsi, si x est un voisin de x0 alors

x ∈ {x1, · · · , xk}. De meme si y est un voisin de xk alors y ∈ {x0, · · · , xk−1}. L’idee de

la preuve est de trouver un cycle passant par tous les sommets de G une et une seule

fois. Pour ceci, si on a un indice i tel que (x0, xi+1) ∈ E et (xi, xk) ∈ E alors on peut

avoir un cycle C = (x0, x1, · · · , xi, xk, xk−1, · · · , xi+1, x0).

x0

x1

x2

xi

xi+1 x

k-1x

k

Page 58: Introduction à la théorie des graphes

4.2 Graphes Hamiltoniens 51

Supposons que pour tout i ∈ {0, · · · , k − 1} on a (x0, xi+1) ∈ E et (xi, xk) /∈ E et pour

tout i ∈ {0, · · · , k − 1} on a (xi, xk) ∈ E et (x0, xi+1) /∈ E. Soit I = {i ∈ {0, · · · , k −

1}|(x0, xi+1) ∈ E} et J = {i ∈ {0, · · · , k−1}|(xi, xk) ∈ E}. On a d(x0) >n

2et d(xk) >

n

2(car tous les voisins de x0 ou de xk sont dans le chemin P, autrement P n’est pas le plus

long chemin dans G). D’ou |I| > n

2et |J | > n

2. Par ailleurs, on a I ⊂ {0, · · · , k − 1}

et J ⊂ {0, · · · , k − 1} d’ou I ∪ J ⊂ {0, · · · , k − 1} par suite |I ∪ J | 6 k < n. Soit

i ∈ I ∩ J , on a i ∈ {0, · · · , k − 1} et (x0, xi+1) ∈ E et (xi, xk) ∈ E contradiction avec

l’hypothese. Ainsi, I∩J = ∅. D’ou |I∪J | = |I|+ |J | > n

2+n

2= n absurde avec le fait que

|I ∪ J | < n. Par consequent, il existe un indice i tel que (x0, xi+1) ∈ E et (xi, xk) ∈ E ce

qui donne l’existence d’un cycle C = (x0, x1, · · · , xi, xk, xk−1, · · · , xi+1, x0) qui passe une

et une seule fois par ces sommets. Si C n’est pas Hamiltonien alors il existe un sommet

y n’appartenant pas au cycle C. Or, G est connexe il existe donc j tel que (xj , y) ∈ E

ceci nous permet d’avoir un chemin plus long que P. Contradiction. Par suite C est

Hamiltonien.

Le theoreme d’Ore (1960) c’est comme une condition suffisante plus generale que le

theoreme de Dirac pour avoir un graphe hamiltonien.

Soit G = (V,E) un graphe d’ordre n > 3 et soient x et y deux sommets tels

que d(x) + d(y) > n, alors G est un graphe Hamiltonien si et seulement si

G+ (x, y) = (V,E ∪ {(x, y)} est Hamiltonien.

Theoreme 19.

Preuve. — Si (x, y) ∈ E il n’y a rien a montrer. Ainsi, dans la suite on suppose que

(x, y) /∈ E.

— Si G est Hamiltonien alors G+ (x, y) est Hamiltonien. Le resultat est trivial.

— Si G + (x, y) est Hamiltonien alors G + (x, y) possede un cycle Hamiltonien. Si

ce cycle ne passe pas par (x, y) alors il est clair que G est hamiltonien. Soit C =

(x = x1, x2, · · · , xn−1, xn = y, x) le cycle Hamiltonien dans G + (x, y) passant par

Page 59: Introduction à la théorie des graphes

52 Graphes Euleriens et Hamiltoniens

(x, y). L’idee de la preuve est similaire a celle du theoreme de Dirac. En effet,

pour montrer que G est hamiltonien, il suffit de montrer qu’il existe un indice i tel

que (x, xi+1) ∈ E et (xi, y) ∈ E. Supposons que pour tout i ∈ {2, · · · , n − 2} on

a (x, xi+1) ∈ E et (xi, y) /∈ E et pour tout i ∈ {2, · · · , n − 2} on a (xi, y) ∈ E et

(x, xi+1) /∈ E. Soit I = {i ∈ {2, · · · , n− 2}|(x, xi+1) ∈ E} et J = {i ∈ {2, · · · , n−

2}|(xi, y) ∈ E}. Remarquons que I 6= ∅, en effet si x2 est le seul voisin de x alors

y possede n− 1 voisin parmi {x2, · · · , xn−1} (car d(x) + d(y) > n). Impossible. De

meme pour y. Si i ∈ I ∩ J alors (x, xi+1) ∈ E et (xi, y) ∈ E ceci contredit notre

hypothese. D’ou I ∩ J = ∅. Ainsi, |I ∪ J | = |I| + |J | > n (car d(x) + d(y) > n).

Par ailleurs, I ∪ J ⊆ {2, · · · , n − 2} c-a-d |I ∪ J | < n absurde. Par consequent,

C′ = (xi, y, xn−1, · · · , xi+1, x, x2, · · · , xi) est un cycle Hamiltonien dans G. D’ou le

resultat.

x x2

xi

xi+1

yxn-1

Soit G un graphe d’ordre n > 3 si pour tout couple de sommets x et y non

adjacents on a d(x) + d(y) > n, alors G est un graphe Hamiltonien.

Corollaire 8.

Preuve. L’idee de la preuve consiste a ajouter des aretes entre les sommets non adja-

cents de G de sorte a obtenir un graphe complet qui est Hamiltonien. Signaler que malgre

l’ajout des aretes on aura toujours d(x) + d(y) > n pour tout couple de sommets x et y.

Ainsi, l’application du theoreme d’Ore, le graphe G est Hamiltonien.

Page 60: Introduction à la théorie des graphes

Chapitre 5

Colorations de graphes

5.1 Presentation

5.1.1 Le theoreme des quatre couleurs

Le theoreme des quatre couleurs est l’un des resultats les plus celebres de mathematiques

discretes et l’un des plus simples a poser. Il a contribue amplement au developpement de

la theorie des graphes, il est reste une conjecture pendant plus d’un siecle (1852-1976).

Peut-on colorer toute carte geographique avec quatre couleurs de sorte que deux

regions voisines soient de couleurs differentes ?

Theoreme 20.

Exemple :

— Une surface coloree avec 3 couleurs.

Page 61: Introduction à la théorie des graphes

54 Colorations de graphes

— Une surface coloree avec 4 couleurs.

5.1.2 Historique du probleme

— 1852, Francis Guthrie, cartographe anglais, pose le probleme sans le publie,

— 1878, Cayley, le publie dans la societe Mathematique de Londres.

— 1879, Kempe trouve une prmiere preuve de la conjecture,

— onze ans plus tard Heawood y trouvera une faille majeure.

— 1880, une seconde preuve proposee par Tait qui sera de meme refutee par Petersen

en 1891.

— Depuis cette epoque, on ne parvenait ni a demontrer la conjecture, ni a en trouver

un contre-exemple.

— 1913, Birkhoff, demontre la conjecture pour toutes les cartes comportant moins de

26 regions a colorer.

— Finalement, en 1976, Appel et Haken, montrent qu’une carte necessitant 5 couleurs

n’existe pas, ce qui repond par l’affirmative a la conjecture des 4 couleurs.

5.1.3 Modelisation par les graphes

— Carte → Graphe

— Region → Sommets

— Deux regions voisines → aretes

— Colorer une region → attribuer une couleur au sommet correspondant

Exemple : Une carte modelisee par un graphe

Page 62: Introduction à la théorie des graphes

5.1 Presentation 55

Notons que deux aretes ne se coupent pas en dehors de leurs sommets

d’extremites. Le graphe obtenu s’appelle un graphe planaire.

Remarque 15.

Page 63: Introduction à la théorie des graphes

56 Colorations de graphes

5.2 Definitions et proprietes

5.2.1 Coloration

Colorer un graphe, c’est colorer les sommets (ou aretes) de ce graphe de telle

facon que deux sommets (aretes) adjacent(e)s aient des couleurs differentes.

Cette coloration est dite coloration propre ou aussi coloration simple. Formelle-

ment,

on definit une coloration d’un graphe G = (V,E) par une fonction : f : X →

{1, 2, ...,m} telle que pour tout (x, y) ∈ X2, si x 6= y et x et y sont adjacents

alors f(x) 6= f(y). Notons que :

— Si X = V , f est une coloration de sommets de G.

— Si X = E, f est une coloration d’aretes de G.

Si le nombre de couleurs utilisees par f est au plus k, on dit que f est une

k-coloration de G. Une coloration est dite optimale si elle utilise un nombre

minimum de couleurs. Le nombre chromatique du graphe G est le plus petit

nombre de couleurs par une coloration de sommets de G. On le designe par

χ(G).

L’indice chromatique de G, note q(G) ou χ′(G), est le plus petit nombre possible

de couleurs utilisees par une coloration d’aretes de G.

Definition 22.

5.2.2 Proprietes

Apres une coloration d’un graphe G on a les proprietes suivantes :

— Chaque sous ensemble de sommets de meme couleur forme un stable.

— On voit facilement que le taille de la clique maximale est un minorant du nombre

chromatique : pour tout graphe ω(G) ≤ χ(G).

— L’indice chromatique d’un G peut etre definit comme le nombre chromatique de

Page 64: Introduction à la théorie des graphes

5.3 Quelques resultats 57

son graphe dual G∗. Notons que le graphe dual G∗ d’un graphe G est un graphe

dont les sommets sont les aretes de G et deux sommets sont relies par une arete

dans G∗ si les aretes correspondantes dans G sont adjacentes.

Exemple : Le graphe G, etiquete de 1 a 5, suivant admet une coloration de 3 couleurs

et remarquons que ω(G) = 3 par consequent χ(G) = 3.

1

2

34

5

1

2

34

5

5.3 Quelques resultats

Dans la suite, G designe un graphe d’ordre n et de taille m et les resultats presentes sont

tous admis.

1 6 χ(G) 6 n

Proposition 10.

Preuve. Il suffit d’attribuer une couleur differente pour chaque sommet.

Si H est un sous graphe de G alors

χ(H) 6 χ(G)

Theoreme 21.

Preuve. Si G admet une coloration minimale avec χ(G) alors cette coloration est valide

pour le sous graphe H par consequent χ(H) 6 χ(G).

Page 65: Introduction à la théorie des graphes

58 Colorations de graphes

ω(G) 6 χ(G)

Corollaire 9.

Preuve. Une application immediate du theoreme 21.

Si G = G1 ∪G2 ∪ · · · ∪Gk alors

χ(G) = max{χ(Gi)| 1 6 i 6 k}

Proposition 11.

Preuve. Une coloration minimal de chaque composante Gi donne le resultat.

G est complet si et seulement si χ(G) = n.

Proposition 12.

Preuve. Si G est complet alors chaque sommet doit avoir sa propre couleur, c-a-d

χ(G) = n. Reciproquement si χ(G) = n alors G admet une coloration minimale ou

chaque sommet a sa propre couleur. Si G n’est pas complet alors il existe au moins deux

sommets x, y de G non adjacents par consequent on peut avoir une coloration qui permet

d’attribuer une seule couleur a x et y et le reste des sommets peuvent avoir des couleurs

differente. Ainsi, cette coloration est valide et necessite n− 1 couleurs, contradiction.

G est biparti si et seulement si χ(G) = 2.

Proposition 13.

Preuve. Si G est biparti alors V (G) = V1∪V2 ou V1 et V2 est une partition de V (G) et ou

il n’y a pas d’adjacence entre les sommets de chaque partition. Ainsi, il suffit d’attribuer

Page 66: Introduction à la théorie des graphes

5.3 Quelques resultats 59

la couleur 1 aux sommets de V1 et la couleur 2 aux sommets de V2. Reciproquement, si

χ(G) = 2 alors on partitionne V (G) en V1 le sous ensemble de sommets ayant la couleur

1 et V2 le sous ensemble de sommets ayant la couleur 2. Il est facile de constater qu’il

n’y a pas d’adjacence entre les sommets de chaque partition.

Si G = Cn est un cycle de taille n alors

χ(Cn) =

2 si n est pair

3 si n est impair

Si G contient un cycle impair alors

χ(G) > 3

Proposition 14.

Preuve. Si n est pair alors Cn est un graphe biparti par consequent χ(Cn) = 2. Si n est

impair alors Cn n’est pas biparti (un graphe biparti ne contient aucun cycle impair) d’ou

χ(Cn) > 2 et comme Cn admet une coloration avec 3 couleurs (les sommets de x1 · · ·xn−1

sont colores par la couleur 1 pour les indices impair et la couleur 2 pour les indices pair

et le sommets xn est colore par la couleur 3).

Si G contient un cycle impair alors χ(G) > 3, il suffit d’appliquer le theoreme 21.

n

α(G)6 χ(G) 6 n− α(G) + 1

ou α(G) designe le nombre de stabilite de G c-a-d la taille maximale des stables

de G.

Theoreme 22.

Preuve. D’une part, on attribue la couleur 1 au sommets du stable maximal de G et

pour le reste des sommets on leur affecte chacun une couleur differente. Ainsi, le nombre

Page 67: Introduction à la théorie des graphes

60 Colorations de graphes

totale de couleurs utilisees pour colorer tous les sommets de G est 1 + n − α(G) par

consequent χ(G) 6 n− α(G) + 1.

D’autre part, une coloration minimale de sommets de G utilise χ(G) couleurs et permet

de partitionner G en χ(G) stables Si associes chacun a une couleur i. Comme |Si| 6 α(G)

pour tout 1 6 i 6 χ(G), on aura n 6 χ(G)α(G), par suitn

α(G)6 χ(G).

χ(G) 61

2+

√2m+

1

4

Theoreme 23.

Preuve. Une coloration minimale de sommets de G utilise k = χ(G) couleurs. G possede

donc au moins une arete entre chaque deux couleurs differentes. Donc, m > 2k(k − 1).

La resolution cet inequation donne le resultat.

Si k = max{δ(H)|H graphe partiel de G} alors

χ(G) 6 k + 1

Theoreme 24.

Preuve. Exercice

Theoreme de Brooks (1941)

Si G est un graphe quelconque alors

χ(G) 6 ∆(G) + 1

Si G est connexe et n’est ni complet ou ni un cycle impaire alors

χ(G) 6 ∆(G)

Theoreme 25.

Page 68: Introduction à la théorie des graphes

5.4 Coloration de graphe planaire 61

Preuve. Exercice

5.4 Coloration de graphe planaire

Un graphe planaire est un graphe represente dans le plan sans qu’aucune arete

n’en coupe une autre. Les regions connexes en lesquelles le plan se trouve partage

par ce graphe s’appellent les faces. Chaque face est delimitee par un cycle du

graphe, qui a 3, 4, ... aretes.

Definition 23.

Formule d’Euler

Soit G un graphe planaire connexe d’ordre n et de taille m. Si f est le nombre

de faces de G alors

n−m+ f = 2

Theoreme 26.

Preuve. Utilisons une recurrence sur m. Si m = 0 alors n = 1 et f = 1 alors n−m+f =

2.

Supposons que pour tout entier m > 0 tel que si H est un graphe planaire (suppose

connexe) d’ordre n et de taille m′ < m contenant f faces, alors n −m + f = 2. Soit G

un graphe planaire connexe d’ordre n, de taille m et de f faces.

— Si G est un arbre alors m = n− 1 et f = 1 par suite n−m+ f = 2.

— Si G n’est pas un arbre, alors G contient au moins une arete e qui n’est pas un

isthme c-a-d e separe deux faces. Ainsi, G − e est le graphe obtenu a partir de G

en supprimant e et en fusionnant les deux faces separee par e en une seule face.

Notons que G − e est un graphe d’ordre n, de taille m − 1 et de face f − 1. Par

hypothese de recurrence, on a n− (m− 1) + (f − 1) = 2 c-a-d n−m+ f = 2.

Page 69: Introduction à la théorie des graphes

62 Colorations de graphes

Si G est un graphe planaire d’ordre n ≥ 3 et de taille m alors m 6 3n− 6.

Theoreme 27.

Preuve. Si G est un graphe d’ordre 3 alors m 6 3 et m 6 3n− 6.

Soit G un graphe planaire connexe (sinon, on applique la meme procedure pour ses com-

posantes connexes) d’ordre n ≥ n et de taille m et de f faces. D’apres la formule d’Euler

n−m+f = 2. Soit F1, · · · , Ff l’ensemble des faces de G. Notons mi le nombre D ?aretes

d’une face Fi. Remarquons que mi > 3 et que chaque arete fait partie de deux faces. Ainsi,

on a

3f 6f∑

i=1

mi 6 2m

d’ou 6− 3n+ 3m 6 2m et m 6 3n− 6.

Un graphe planaire possede toujours un sommet x tel que d(x) 6 5.

Proposition 15.

Preuve. Soit G un graphe planaire d’ordre n > 6 et de taille m. Si δ(G) > 6 alors

2m =∑

x∈V (G)

d(x) > 6n c-a-d m > 3n. Contradiction avec le theoreme 27.

Theoreme (Heawood)

Tout graphe planaire G est 5-colorable c-a-d χ(G) 6 5.

Theoreme 28.

Preuve. Admis.

Theoreme (Grotzsch 1959)

Tout graphe planaire ne contenant pas de triangle est 3-colorable.

Theoreme 29.

Page 70: Introduction à la théorie des graphes

5.4 Coloration de graphe planaire 63

Theoreme des 4 couleurs

Tout graphe planaire est 4-colorable.

Theoreme 30.

Preuve. Admis.

Page 71: Introduction à la théorie des graphes

64 Colorations de graphes

Page 72: Introduction à la théorie des graphes

Chapitre 6

Exercices

1. Existent-t-ils des graphes dont les sommets ont pour degre les sequences suivantes ?

Si la reponse est oui, dessiner le graphe correspondant. (a) 1,2,2,3,4,7 (b) 1,2,3,4,4

(c) 2,3,4,8,3 (d) 0,3,3,3,3,3,3,3,3 (e) 1,1,3,3,4,5,6,7 (f) 1,1,3,4,5,6 (g) 3,3,4,4,6,6,6,8

2. Donner la taille d’un graphe d’ordre 6 ayant 4 sommets de degre 2 et deux sommets

de degre 4. Dessiner ce graphe.

3. Soit G un graphe d’ordre 10, de taille 11 et dont les sommets sont de degre 2 ou 3.

Donner le nombre de sommets de degre 2 et de degre 3. Dessiner le graphe G.

4. Est-t-il possible de construire un graphe d’ordre 10 et de taille 50 ?

5. Un graphe d’ordre 4 peut-il avoir un sommet de degre 1 et 3 sommets de degre 3 ?

6. Existe t-il un graphe d’ordre 4 et de taille 7 ? Justifier votre reponse.

7. Soit G un graphe d’ordre 6, de taille 7 et dont les sommets sont de degre 2 ou 3.

Donner le nombre de sommets de degre 2 et de degre 3. Dessiner le graphe G.

8. Montrer que dans un reseau social, il y a toujours deux individus ayant le meme

nombre de contacts presents.

(a) Un hypercube de dimension n note Hn (appele aussi n-cube) est un graphe

dont les sommets sont des ensembles de n-uplets de {0, 1}. Deux sommets sont

adjacents si et seulement si les n-uplets correspondants different en exactement

une coordonnee.

Page 73: Introduction à la théorie des graphes

66 Exercices

i. Dessiner H1, H2, H3, H4.

ii. Determiner l’ordre de Hn.

iii. Montrer que Hn est un graphe regulier. Deduire la taille de Hn.

9. Soit n, r deux entiers tels que 2r 6 n. Un graphe de Johnson J(n, r) est un graphe

dont les sommets sont les parties a r elements d’un ensemble a n elements, deux

sommets etant adjacents lorsque les sous ensembles correspondants ont exactement

r − 1 elements communs.

(a) Dessiner J(5, 1) et J(4, 2).

(b) Donner la classe des graphes J(n, 1).

(c) Dessiner J(5, 2) le complementaire de J(5, 2).

(d) Determiner l’ordre J(n, r).

(e) Montrer que J(n, r) est un graphe regulier. Deduire la taille de J(n, r).

10. Un graphe G = (Z/nZ, E) est dit circulant d’ordre n et de partie S ⊂ Z/nZ ou

0 /∈ S et x ∈ S implique −x ∈ S et (x, y) ∈ E si et seulement si x− y ∈ S.

a. Dessiner 4 exemples de graphes circulants d’ordre 8.

b. Est-ce que les graphes circulants sont reguliers.

c. Est-ce que le complementaire d’un graphe circulant est un graphe circulant ?

Si oui donner un exemple.

11. Soit G est un graphe d’ordre n et de taille m, donner l’ordre et la taille de G le

graphe complementaire de G.

12. Dessiner un graphe isomorphe a son complementaire.

13. Montrer que deux graphesG etH sont isomorphes si et seulement si leur complementaire

G et H sont aussi isomorphes. Donner un exemple.

14. Trouver les graphes isomorphes parmi les graphes suivants :

Page 74: Introduction à la théorie des graphes

Exercices 67

15. Un graphe G est autocomplementaire si G = G. Montrer que si G est un graphe

autocomplementaire d’ordre n alors n ≡ 0[4] ou n ≡ 1[4]. La reciproque est-elle

toujours vraie ?

16. Montrer que tout graphe G autocomplementaire d’ordre 4k+1 possede un sommet

de degre 2k.

17. Les graphes suivants sont t-ils des sous graphes, des graphes partiels ou des graphes

induits du graphe de Petersen ?

18. Montrer que si x et y sont les seuls sommets de degre impair dans un graph G alors

x et y sont connecte dans G.

19. Montrer que si P1 et P2 sont deux chemins de longueur maximale dans un graphe

connexe, alors P1 et P2 ont un sommet en commun.

20. Soient G et H deux graphes isomorphes. Montrer que G est connexe si et seulement

si H est connexe.

21. Soit G un graphe d’ordre n. Montrer que si pour tout couple de sommets (x, y)

non adjacents et deg(x) + deg(y) > n− 1 alors G est connexe et diam(G) 6 2.

22. Montrer que si G est un graphe d’ordre n > 5 et contenant trois sommets distincts

x, y, z tels que dG(x, y) = dG(x, z) = n− 2 alors G est connexe.

23. Montrer que si G est un graphe non connexe, alors son graphe complementaire G

est connexe et diam(G) 6 2.

Page 75: Introduction à la théorie des graphes

68 Exercices

24. Soit G un graphe acyclique d’ordre n et de taille m. Montrer que m 6 n− 1.

25. Montrer qu’un graphe G reste connexe apres avoir supprime une arete e de G si et

seulement si e est une arete d’un cycle dans G.

26. Est ce que si tous les sommets d’un graphe connexe G sont de degre 2 alors G est

un cycle ? Justifier votre reponse.

27. Montrer que si G est un graphe k-regulier (k > 2) et dont g(G) = 4 alors l’ordre

de |G| > 2k. Quels sont les graphe de ce type qui sont d’ordre 2K.

28. Montrer qu’un graphe G = (V,E) n’est pas connexe si et seulement si V peut etre

partitionne en deux sous-ensembles V1 et V2 tels que il n’existe aucune arete dans

E dont l’un des deux extremites dans V1 et l’autre dans V2.

29. Soit G un graphe d’ordre n pair. Si G possede deux composantes connexes qui sont

deux sous graphes complets. Montrer que G possede au minimumn(n− 2)

4aretes.

30. Soit G = (V,E) un graphe simple non oriente. On appelle excentricite d’un sommet

x de G la quantite e(x) = max{dG(x, u) : u ∈ V }. rad(G) = min{e(x) : x ∈ V }

designe le rayon du graphe G. On appelle centre du G, un sommet d’excentricite

minimale et si e(x) = diam(G) alors le sommet x est appele sommet peripherique

de G.

(a) Donner le rayon des graphes suivants : Pn, Cn, P2�P2�P2, Pn�Pm, Pn�Cm

et Cn�Cm. Ou n,m > 3.

(b) Montrer que pour tout graphe connexe d’ordre > 2,

rad(G) 6 diam(G) 6 2rad(G)

(c) Existe t-il un graphe G non complet tel que rad(G) = diam(G) ?

(d) Donner les sommets centres et les sommets peripheriques du graphe P3�P6.

(e) Pour n > 4, donner l’exemple d’un graphe d’ordre n non complet ou tous ses

sommets sont des sommets centres et des sommets peripheriques.

31. Les graphes suivantes sont t-ils bipartis ?

Page 76: Introduction à la théorie des graphes

Exercices 69

32. Est ce les graphes suivants sont bipartis :

— Pn�Pm, Pn�Cm, Cn�Cm ;

— Graphes circulants ;

— Hypercube de dimension n ;

33. Soient G et H deux graphes isomorphes. Montrer que G est biparti si et seulement

si H est biparti.

34. Soit G un graphe connexe biparti. Montrer que G est biparti complet si et seulement

si G ne contient aucun sous graphe induit isomorphe a P4.

35. Le graphe biparti complet K4,4 contient-il un sous graphe isomorphe au graphe

K4 ?

36. Existe-t-il un graphe G biparti tel que δ(G) + ∆(G) > |G| ?

37. Montrer que si G = (V1 ∪ V2, E) est un graphe biparti k-regulier alors

— |V1| = |V2| ;

— k 6 |G|/2.

38. Soit G = (V1 ∪ V2, E) un graphe biparti.

(a) Montrer que∑

x∈V1

d(x) =∑y∈V2

d(y).

(b) En deduire que si G est k-regulier, avec k > 1, alors |V1| = |V2|.

(c) Montrer que |E| 6 |V1| × |V2|.

(d) En deduire que |E| 6 |G|2/4.

(e) Decrire les graphes simples bipartis G pour lesquels il y a egalite en (d).

39. Monter que G est biparti si et seulement si α(H) >|H|2

, ou α(H) est le nombre

de stabilite d’un sous-graphe H de G.