67
24/04/2018 1 GRAPHES ET ALGORITHMES GRAPHES ET ALGORITHMES Historique : La théorie des graphes (1736) : le mathématicien allemand L. Euler apporte une réponse au problème que des habitants de la ville de Köenigsberg : comment traverser les sept ponts de cette ville sans jamais passer deux fois par le même. 24/04/2018 2

GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

1

GRAPHES ET

ALGORITHMES

GRAPHES ET ALGORITHMES

Historique :

La théorie des graphes (1736) : le mathématicienallemand L. Euler apporte une réponse au problème quedes habitants de la ville de Köenigsberg : commenttraverser les sept ponts de cette ville sans jamais passerdeux fois par le même.

24/0

4/2

01

8

2

Page 2: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

2

GRAPHES ET ALGORITHMES

Historique :

Jusqu'en 1946, la théorie des graphes reste dudomaine des mathématiques.

1939-45 : Naissance de la Recherche Opérationnelle,provoquant un développement de la théorie desgraphes comme modèles de problèmes concrets.

Depuis les années 1960 : développement des sciencesde l'information et de la communication.

24/0

4/2

018

3

PREMIER EXEMPLE (LES SEPT PONTS DE

KÖNIGSBERG)

Est-il possible de se promener dans la ville deKönigsberg de façon à emprunter chaque pontune et une seule fois et se retrouver dans lequartier de départ ?

24/0

4/2

01

8

4

Page 3: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

3

INTRODUCTION

Théorie des graphes:

Représenter des problèmes sous formes depoints et des traits reliant ces points

Etablir des théorèmes, des algorithmesdéfinissant les différents types de relationsentre ces points et ces traits.

En théorie des graphes, les points sont appeléssommets et les traits arêtes. 5

24/0

4/2

018

DÉFINITIONS ET VOCABULAIRE

Définitions mathématiques :

Soit E un ensemble fini. L’ensemble des sous-ensembles deE, également appelé ensemble des parties de E, est noté P(E).

On appelle graphe sur E un couple G = (E, Γ) où Γ est uneapplication de E → P(E).

Il n’est pas facile de visualiser un graphe donné sous cette forme

6

24/0

4/2

01

8

Page 4: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

4

DÉFINITIONS ET VOCABULAIRE

Exemple :

Soit un graphe G = (E, Γ), avec E = {1, 2, 3, 4} et Γdéfinie par :

- Γ(1) = {1, 2, 4}

- Γ(2) = {3, 1}

- Γ(3) = {4}

- Γ(4) = ∅

7

24/0

4/2

018

DÉFINITIONS ET VOCABULAIRE

8

24/0

4/2

01

8

Exemple :

Soit un graphe G = (E, Γ), avec E = {1, 2, 3, 4} et Γdéfinie par :

- Γ(1) = {1, 2, 4}

- Γ(2) = {3, 1}

- Γ(3) = {4}

- Γ(4) = ∅

Page 5: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

5

DÉFINITIONS ET VOCABULAIRE

On note |E| le cardinal (nombre d’éléments) de E.

Pour un graphe G=(E,Γ), on notera habituellementn =|E| et m = |Γ|.

Un sous-graphe de G=(E, Γ) est un graphe H = (F, ΓF)tel que F est un sous-ensemble de E et ΓF estl’ensemble des arcs de Γ dont les deux sommets sontdans F.

On dit que H est le sous-graphe de G induit par F, etque ΓF est la restriction de Γ à l’ensemble F.

24/0

4/2

018

9

DÉFINITIONS ET VOCABULAIRE

24/0

4/2

01

8

10

Un graphe partiel de G est un graphe G′= (E,Γ′) tel queΓ′ est un sous-ensemble de Γ.

Page 6: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

6

DÉFINITIONS ET VOCABULAIRE24/0

4/2

018

11

Le symétrique d’un graphe G est le graphe G−1= (E, Γ−1)défini par :

Il s’agit d’un graphe dont l’orientation des arcs a étéinversée par rapport au graphe initial.

DÉFINITIONS ET VOCABULAIRE

24/0

4/2

01

8

12

Le symétrique d’un graphe G est le graphe G−1= (E, Γ−1)défini par :

Il s’agit d’un graphe dont l’orientation des arcs a étéinversée par rapport au graphe initial.

Page 7: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

7

Graphe symétrique :

Le graphe G = (E, Γ) est un graphe symétrique si Γ−1= Γ.Autrement dit, G est un graphe symétrique si :

DÉFINITIONS ET VOCABULAIRE24/0

4/2

018

13

DÉFINITIONS ET VOCABULAIRE

Graphe antisymétrique :

Un graphe G = (E, Γ) est antisymétrique si :

24/0

4/2

01

8

14

Page 8: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

8

DÉFINITIONS ET VOCABULAIRE

Fermeture symétrique :

On appelle fermeture symétrique de G le grapheGs= (E, Γs) défini par :

24/0

4/2

018

15

DÉFINITIONS ET VOCABULAIRE

24/0

4/2

01

8

16

Fermeture symétrique :

On appelle fermeture symétrique de G le grapheGs= (E, Γs) défini par :

Page 9: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

9

DÉFINITIONS ET VOCABULAIRE

Graphe non-orienté :

On appelle graphe non-orienté sur E un couple G =(E, Γ) tel que Γ un sous-ensemble de { {x, y} | x ∈ E, y∈ E }.

Tout élément de Γ : {x, y} est appelé arête du graphe.

On dit que l’arête {x, y} est adjacente au sommet x etau sommet y.

24/0

4/2

018

17

DÉFINITIONS ET VOCABULAIRE

Graphe non-orienté associé à un graphe orienté :

On peut associer à un graphe orienté donné (E, Γ) sa version non-orientée (E, Γ) définie par :

24/0

4/2

01

8

18

Page 10: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

10

DÉFINITIONS ET VOCABULAIRE

Réflexivité :

Un graphe G = (E, Γ) est réflexif si :

24/0

4/2

018

19

DÉFINITIONS ET VOCABULAIRE

Antiréflexivité :

Un graphe G = (E, Γ) est antiréflexif si :

24/0

4/2

01

8

20

Page 11: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

11

DÉFINITIONS ET VOCABULAIRE

Graphe complet :

Un graphe G = (E,Γ) est dit complet si pour toutcouple de sommets (x, y) distincts, on a (x, y) ∈ Γ.

Un graphe complet est aussi appelé clique à nsommets.

24/0

4/2

018

21

DÉFINITIONS ET VOCABULAIRE

Graphe complet :

Exercice :

Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de n sommets.

24/0

4/2

01

8

22

Page 12: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

12

DÉFINITIONS ET VOCABULAIRE

Chemins :

Soit G = (E, Γ) un graphe et soient x0 et xk deuxsommets de E.

Un chemin C de x0 à xk est une séquence ordonnéeC = (x0, . . . , xk) de sommets de E telle que :

chaque sommet xi du chemin est un successeur dusommet xi−1.

Une séquence telle que C = (x0) est également appeléechemin de x0 à x0 (chemin trivial).

k est la longueur du chemin. Pour un chemin trivialk = 0.

Un chemin C est un circuit si x0 = xk avec k > 0.

24/0

4/2

018

23

DÉFINITIONS ET VOCABULAIRE

Le chemin C est dit élémentaire si les sommets xisont tous distincts (sauf éventuellement x0 et xk).

Proposition :

Soit G = (E, Γ), avec |E|= n.

La longueur d’un chemin élémentaire (qui n’est pas uncircuit) dans G est inférieure ou égale à n-1.

De même la longueur d’un circuit élémentaire estinférieure ou égale à n.

24/0

4/2

01

8

24

Page 13: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

13

DÉFINITIONS ET VOCABULAIRE

Soit G = (E, Γ), et Γs la fermeture symétrique de Γ.

On appelle chaîne tout chemin dans (E, Γs).

On appelle cycle tout circuit dans (E, Γs ) ne passant pas deux fois par la même arête.

24/0

4/2

018

25

DÉFINITIONS ET VOCABULAIRE

Exemple :

24/0

4/2

01

8

26

(1,2,1) ; (1,2,3,1,2,4) ; (1,2,3) ; (4,2,1) ; (1,3,2,1) ; (1,2,3,1)(1,3,1).

Page 14: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

14

DÉFINITIONS ET VOCABULAIRE24/0

4/2

018

27

Exemple :

DÉFINITIONS ET VOCABULAIRE

Composante connexe

Soit G = (E, Γ) et x ∈ E. On définit Cx , la composanteconnexe de G contenant x par :

Cx est l’ensemble des sommets qu’il est possibled’atteindre par une chaîne à partir de x.

24/0

4/2

01

8

28

Page 15: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

15

DÉFINITIONS ET VOCABULAIRE

Exemple :

C1, C2, C3, C4, C5, C6, C7, C8.

24/0

4/2

018

29

DÉFINITIONS ET VOCABULAIRE

24/0

4/2

01

8

30

Exemple :

Page 16: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

16

DÉFINITIONS ET VOCABULAIRE

Composante fortement connexe

Soit G = (E, Γ) et x ∈ E. On définit Cx′, la composante fortement connexe de G contenant x par :

C’1, C’2, C’3, C’4, C’5, C’6, C’7, C’8.

24/0

4/2

018

31

DÉFINITIONS ET VOCABULAIRE

24/0

4/2

01

8

32

Composante fortement connexe

Soit G = (E, Γ) et x ∈ E. On définit Cx′, la composante fortement connexe de G contenant x par :

Page 17: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

17

EXERCICES : Exercice 1

Trois professeurs P1, P2, P3 devront donner lundi prochainun certain nombre d’heures de cours à trois classes C1, C2,C3:

P1 doit donner 2 heures de cours à C1 et 1 heure à C2

P2 doit donner 1 heure de cours à C1, 1 heure à C2 et 1heure à C3

P3 doit donner 1 heure de cours à C1, 1 heure à C2 et 2heures à C3

Comment représenter cette situation par un graphe ?

Quel type de graphe obtenez-vous ?

Combien faudra-t-il de plages horaires au minimum ?

Aidez-vous du graphe pour proposer un horaire du lundipour ces professeurs.

24/0

4/2

018

33

EXERCICES :

Solution exercice 1 :

On obtient le graphe biparti suivant :

En colorant les arêtes de ce graphe (1couleur = 1 heure).

En prenant garde que chaque sommetn’ait pas deux arêtes incidentes de mêmecouleur, on obtient le résultat suivant :

24/0

4/2

01

8

34

Page 18: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

18

EXERCICES :

Solution exercice 1 :

Du graphe coloré, on tire l’horaire suivant :

24/0

4/2

018

35

EXERCICES :

Exercice 2

Un tournoi d’échecs oppose 6 personnes. Chaque joueurdoit affronter tous les autres.

Construisez un graphe représentant toutes les partiespossibles.

Quel type de graphe obtenez-vous ?

Si chaque joueur ne joue qu’un match par jour, combiende jours faudra-t-il pour terminer le tournoi ?

Aidez-vous du graphe pour proposer un calendrier desmatches.

24/0

4/2

01

8

36

Page 19: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

19

EXERCICES :

Solution exercice 2 :

On obtient le graphe complet K6.

Il faudra jouer 5 jours pour terminer le tournoi.

Un calendrier possible des matches :

24/0

4/2

018

37

EXERCICES :

Solution exercice 2 :

24/0

4/2

01

8

38

Page 20: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

20

EXERCICES :

Exercice 3

Sur un échiquier 3×3 , les deux cavaliers noirs sontplacés sur les cases a1 et c1, les deux cavaliersblancs occupant les cases a3 et c3.

En utilisant un graphe, déterminer lesmouvements alternés des blancs et des noirs quipermettront aux cavaliers blancs de prendre lesplaces des cavaliers noirs, et vice versa. Lesblancs commencent.

24/0

4/2

018

39

EXERCICES :

Solution exercice 3

Les mouvements peuvent être par exemple : c3-b1, a3-c2, a1-b3, c1-a2, b1-a3, c2-a1, b3-c1, a2-c3, c3-b1, a3-c2, a1-b3, c1-a2, b1-a3, c2-a1, b3-c1, a2-c3.

24/0

4/2

01

8

40

Page 21: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

21

EXERCICES :

Exercice 4

On appelle degré du sommet x , et on note d(x) , lenombre d’arêtes incidentes à ce sommet.

Une boucle sur un sommet compte double.

Lemme des poignées de mains : Démontrez que lasomme des degrés des sommets d’un graphe est égaleà deux fois le nombre d’arêtes.

Montrez qu’un graphe simple a un nombre pair desommets de degré impair.

24/0

4/2

018

41

EXERCICES :

Solution exercice 4

Soit G = (E, V) un graphe simple. Quand on calcule lasomme des degrés des sommets, chaque arête (x, y) deE est comptée deux fois, une première fois pour d(x)et une seconde fois pour d(y). Donc, cette somme estfinalement égale à deux fois le nombre d’arêtes.

24/0

4/2

01

8

42

Page 22: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

22

Solution exercice 4

Notons P l’ensemble des sommets de degré pair et Il’ensemble des sommets de degré impair d’un graphesimple G=(V,E). P et I forment une partition de V.

D’après le lemme des poignées de mains, on a :

Or 2.|E| et ∑v∈P d(v) sont des entiers pairs. ∑v∈I d(v)est également pair, puisque c’est la différence de deuxentiers pairs.

Chaque terme de la somme ∑v∈I d(v) est impair. Ellene peut donc être paire que si le nombre de termes estpair.

EXERCICES :24/0

4/2

018

43

EXERCICES :

Exercice 5

Est-il possible de relier 15 ordinateurs de sorte quechaque appareil soit relié avec exactement troisautres ?

24/0

4/2

01

8

44

Page 23: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

23

EXERCICES :24/0

4/2

018

45

Solution exercice 5

Est-il possible de relier 15 ordinateurs de sorte quechaque appareil soit relié avec exactement troisautres ?

Considérons le graphe simple dont les sommetsreprésentent les 15 ordinateurs et les arêtesreprésentent les liaisons entre ces ordinateurs.

Si chaque appareil est relié à exactement 3ordinateurs du réseau, les sommets du graphe sonttous de degré impair.

D’après le résultat établi dans l’exercice 4, un telgraphe doit posséder un nombre pair de sommets, leréseau est donc impossible.

EXERCICES :

Exercice 6

Le degré d’un graphe est le degré maximum de tousses sommets.

Un graphe dont tous les sommets ont le même degréest dit régulier. Si le degré commun est k , alors ondit que le graphe est k-régulier.

On s’intéresse aux graphes 3-réguliers. Construisezde tels graphes ayant 4, 5, 6, puis 7 sommets.

Qu’en déduisez-vous ?

Prouvez-le !

24/0

4/2

01

8

46

Page 24: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

24

EXERCICES :

Solution exercice 6

Ci-dessous deux graphes 3-réguliers ( 4 et 6 sommets) :

On constate qu’il n’existe pas de graphes 3-réguliersayant un nombre impair de sommets.

le nombre d’arêtes d’un graphe cubique à n sommets est3n/2, qui n’est entier que lorsque n est pair.

24/0

4/2

018

47

EXERCICES :

Exercice 7

Une suite décroissante d’entiers est graphique s’ilexiste un graphe simple dont les degrés des sommetscorrespondent à cette suite. Par exemple, un trianglecorrespond à la suite (2, 2, 2).

Les suites suivantes sont-elles graphiques :

(3, 3, 2, 1, 1), (3, 3, 1, 1), (3, 3, 2, 2), (4, 2, 1, 1, 1, 1), (5,3, 2, 1, 1, 1), (5, 4, 3, 1, 1, 1, 1).

Trouvez deux graphes correspondant à la suite (3,2,2,2,1).

24/0

4/2

01

8

48

Page 25: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

25

EXERCICES :

Solution exercice 7

Les suites (3, 3, 2, 1, 1), (3, 3, 2, 2) et (4, 2, 1, 1, 1, 1) sont graphiques :

Les graphes ci-dessous correspondent tous deux à la suite (3, 2, 2, 2, 1) :

24/0

4/2

018

49

DÉFINITIONS ET VOCABULAIRE

Définitions

Soit un graphe (orienté) G=(E, Γ) et un sommet x ∈ E.On définit le degré extérieur de x, noté d+(x) par :

Le degré extérieur est le nombre de successeurs de x.

On définit le degré intérieur de G, noté d−(x) par :

Le degré intérieur est le nombre de prédécesseurs de x.

Le degré du sommet x est défini par :

24/0

4/2

01

8

50

Page 26: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

26

EXERCICES :

Montrez que la somme des degrés de tous lessommets d’un graphe G quelconque est paire.

Peut-on tracer dans le plan cinq droites distinctes,telles que chacune d’entre elles ait exactement troispoints d’intersection avec les autres ? En modélisantce problème par un graphe, démontrez que cela n’estpas possible.

“dans toute réunion, il y a au moins deux personneayant le même nombre d’amis présents” (on supposela relation d’amitié symétrique).

A quelle propriété correspond cette affirmation? Cettepropriété est elle fausse ou vraie? Donnez une preuvede ce que vous avancez.

24/0

4/2

018

51

DÉFINITIONS ET VOCABULAIRE

Représentation matricielle :

Soit G=(E, Γ), avec |E|=n. On peut représenter Gpar la matrice booléenne MΓ =[mij]i,j =1...n, dite matriced’adjacence de G, telle que :

24/0

4/2

01

8

52

Page 27: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

27

DÉFINITIONS ET VOCABULAIRE

Exemple :

Soit le graphe G=(E, Γ) suivant :

La matrice d’adjacence MΓ

associée à G est la suivante :

24/0

4/2

018

53

DÉFINITIONS ET VOCABULAIRE

24/0

4/2

01

8

54

On définit le produit booléen de matrices à partirdes opérateurs ∨ (ou) et ∧ (et). Soient A = [aij]i,j=1...n et B = [bij]i,j=1...n deux matrices

booléennes, alors C = A × B =[cij]i,j=1...n est définie par :

Proposition : Soit Mp= M × . . . × M (p fois), où M est lamatrice booléenne associée au graphe G. On a :

Mpij=1 ⇔ il existe un chemin de longueur p dans G de i à j.

Proposition : Soit Mp = I∨M∨M2∨…∨Mp.

On a : Mpij=1 ⇔ il existe un chemin de longueur ≤ p dans

G de i à j.

^

^

Page 28: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

28

DÉFINITIONS ET VOCABULAIRE

Exercice :

Soit M la matrice booléenne définie par :

A quoi est égal M2006 ? Justifiez votre réponse.

On évitera, le plus possible, les calculs.

24/0

4/2

018

55

DÉFINITIONS ET VOCABULAIRE

Graphe biparti :

On dit qu’un graphe G=(E, Γ) est biparti si l’ensembleE des sommets peut être partitionné en deux sous-ensembles distincts E1 et E2 de telle sorte que :

24/0

4/2

01

8

56

Page 29: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

29

DÉFINITIONS ET VOCABULAIRE

Exemple :

24/0

4/2

018

57

24/0

4/2

01

8

58

Exemple :

On voit que G1 est biparti avec E1 = {1,4,5} et E2={2,3}.Le graphe G2 n’est pas biparti.

DÉFINITIONS ET VOCABULAIRE

Page 30: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

30

ARBRES ET ARBORESCENCES

Arbre :

Un arbre est un graphe connexe sans cycle.

Un arbre ne comporte pas de boucles.

Soit G=(E,Γ), tel que |E|=n ≥ 2 et |Γ|=m. Lespropriétés suivantes sont équivalentes :

G est connexe et sans cycle,

G est connexe et m = n − 1,

G est sans cycle et m = n − 1,

G est sans boucles et il existe une unique chaîneélémentaire joignant tout couple de sommets a et bdistincts.

24/0

4/2

018

59

ARBRES ET ARBORESCENCES

Racine :

Soit G= (E,Γ), x ∈ E. On dit que x est une racine de Gsi ∀y ∈ E \{x}, il existe un chemin de x à y.

Exemple :

24/0

4/2

01

8

60

Page 31: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

31

24/0

4/2

018

61

ARBRES ET ARBORESCENCES

Racine :

Soit G= (E,Γ), x ∈ E. On dit que x est une racine de Gsi ∀y ∈ E \{x}, il existe un chemin de x à y.

Exemple :

Ce graphe a pour racine D.

ARBRES ET ARBORESCENCES

Arborescences :

Soit G=(E,Γ) un graphe, soit r∈E. Le graphe G est unearborescence de racine r si :

G est antisymétrique, et

G est un arbre, et

r est une racine de G.

Un sommet d’une arborescence est appelé une feuilles’il n’a aucun successeur.

24/0

4/2

01

8

62

Page 32: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

32

ARBRES ET ARBORESCENCES

Découpage en niveaux :

Une arborescence peut être découpée en niveaux .

24/0

4/2

018

63

EXEMPLES ET APPLICATIONS

Fausse monnaie :

Soit 8 pièces de monnaies, dont une est fausse (elleest plus légère que les autres). On possède deuxbalances. La balance 1 permet de savoir quel plateauest le plus lourd et ne possède que deux états (<, ≥) ;la balance 2 possède trois états (>, <, =). On cherche àtrouver la fausse pièce en minimisant le nombre depesées.

Pour modéliser la résolution de ce problème, on vautiliser une arborescence.

24/0

4/2

01

8

64

Page 33: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

33

EXEMPLES ET APPLICATIONS

Arborescence de décision :

Soit G = (E,Γ) une arborescence de racine r ∈ E. Soit X un ensemble fini (dont les éléments représenteront pour nous les “possibilités” ).

On dit que G est une arborescence de décision sur Xs’il existe une application f : E → P(X) telle que :

24/0

4/2

018

65

EXEMPLES ET APPLICATIONS

Dans le cas de notre exemple de la balance 1, onpose 4 pièces sur chaque plateau. Un des deuxplateaux sera forcément moins lourd car il contientune fausse pièce.

On prend le lot de 4 pièces les moins lourdes et onle divise en 2 et ainsi de suite.

24/0

4/2

01

8

66

Page 34: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

34

EXEMPLES ET APPLICATIONS

Le nombre de pesées pour trouver la fausse pièceest égale au nombre de niveau du graphe moins1, soit ici 3.

24/0

4/2

018

67

EXEMPLES ET APPLICATIONS

On peut suivre la même approche pour la balance 2.On aura alors un arbre à 3 niveaux et une solution endeux pesées.

24/0

4/2

01

8

68

Page 35: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

35

EXEMPLES ET APPLICATIONS

Arithmétique :

On s’intéresse à l’´evaluation d’expressionsarithmétiques, en respectant les priorités desdifférents opérateurs. Soit l’expression arithmétique :

Sur l’arbre (slide suivant) correspondant àl’expression (A), chaque sommet du graphe est soitune donnée (symbolique ou numérique), soit unopérateur.

24/0

4/2

018

69

EXEMPLES ET APPLICATIONS

24/0

4/2

01

8

70

Arithmétique :

Les opérateurs binaires possèdent deux successeurs, les opérateurs unaires en possèdent un.

Les données n’ont aucun successeur, ce sont les feuilles de l’arbre.

Le problème est l’ordre d’évaluation

Page 36: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

36

EXEMPLES ET APPLICATIONS

Arborescence ordonnée :

Soit E un ensemble fini

On note O(E) l’ensemble des k-uplets ordonnésd’éléments de E.

Un couple G=(E,Γ), où Γ est une application de Edans O(E) est appelé un graphe ordonné sur E.

24/0

4/2

018

71

oo o

EXEMPLES ET APPLICATIONS

Arborescence ordonnée :

A tout graphe ordonné (E,Γ), on peut fairecorrespondre le graphe (E,Γ) tel que :

Γ(a) = {x1, ..., xi} = { éléments du k-uplet Γ(a)}.

On dit que G=(E,Γ) est une arborescence ordonnée(ou arborescence plane) si (E,Γ) est une arborescence.

24/0

4/2

01

8

72

o

o

oo

Page 37: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

37

EXEMPLES ET APPLICATIONS

Arborescence de recherche :

Soit D un ensemble appelé domaine, muni d’unerelation d’ordre total (que l’on notera ≤)

Soit X ⊂ D et n ∈ D.

La question que l’on se pose est de savoir si nappartient à l’ensemble X.

24/0

4/2

018

73

EXEMPLES ET APPLICATIONS

Arborescence de recherche :

On prend D égal à l’ensemble des chaînes de caractèresalphabétiques.

X une partie de ces chaînes (l’ensemble des mots d’undictionnaire).

≤ représentant l’ordre lexicographique usuel.

24/0

4/2

01

8

74

Page 38: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

38

EXEMPLES ET APPLICATIONS

Arborescence de recherche :

On considère le domaine D = ℕ.

X une partie de ℕ.

≤ l’ordre habituel sur les entiers naturels.

24/0

4/2

018

75

EXEMPLES ET APPLICATIONS

Arborescence de recherche :

La recherche d’un élément dans l’ensemble X estbeaucoup plus rapide si :

X est un arbre binaire.

L’arborescence est ordonnée.

pour tout sommet x, toute valeur située dans lasous-arborescence gauche de x est inférieure à lavaleur associée à x, et toute valeur située dans lasous-arborescence droite de x est supérieure à lavaleur associée à x.

24/0

4/2

01

8

76

Page 39: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

39

EXEMPLES ET APPLICATIONS

Arborescence de recherche :

Il faut de plus que l’arborescence soit équilibrée

Une arborescence binaire respectant toutes ces conditions ci-dessus est appelée arborescence de

recherche

24/0

4/2

018

77

EXEMPLES ET APPLICATIONS

Arborescence de recherche :

Arborescence de recherche pour la relation ≤ définie sur le domaine ℕ, avec X = {6, 8, 9, 12, 15, 13, 17}.

24/0

4/2

01

8

78

Page 40: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

40

EXEMPLES ET APPLICATIONS

Exercice :

Ecrivez un algorithme permettant de tester laprésence d’une valeur donnée v dans une arborescencede recherche.

24/0

4/2

018

79

EXEMPLES ET APPLICATIONS

Exercice :

Ecrivez deux programmes récursifs, l’un permettantd’afficher les valeurs d’une arborescence de recherchedans l’ordre croissant, l’autre dans l’ordre décroissant.

24/0

4/2

01

8

80

Page 41: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

41

24/0

4/2

018

81

PROBLÈME DU PLUS COURT CHEMIN

RECHERCHE DE CHEMIN LE PLUS COURS

• Dans un problème de plus court chemin, on considère un graphe orienté G = (E, Γ).

• Chaque arc est muni d’un poids.

• Un chemin C = (X1, ..., Xn) possède un poids égale la somme des poids des arcs de C.

• Le plus court chemin d’un sommet X à un sommet Yest le chemin de poids minimum qui relie X et Y.

24/0

4/2

01

8

82

Page 42: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

42

RECHERCHE DE CHEMIN LE PLUS COURS

• En générale, on cherche à trouver les chemins les plus courts d’un sommet particulier à tout les autres sommets du graphe.

24/0

4/2

018

83

RECHERCHE DE CHEMIN LE PLUS COURS

Algorithme de Moore-Dijkstra

Dans cet algorithme on suppose que les poids sont tous positifs ou nuls.

24/0

4/2

01

8

84

Initialisation :

On note S un ensemble dans lequel on peut ajouter des sommets (au départ il contient le sommet source).

A chaque sommet du graphe on associe un couple (distance provisoire, prédécesseur ) de la façon suivante :

• Au sommet source on associe le couple (0 , A). • A chaque sommet Y adjacent au sommet source on

associe le couple (poid_arc(A,Y),A).• A tout les autres sommets on associe le couple (Inf,?).

Page 43: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

43

RECHERCHE DE CHEMIN LE PLUS COURS24/0

4/2

018

85

Itération :

Tant que : tous les sommets ne sont pas dans S et qu’il en existe un dont la distance provisoire est différente de +∞.

-Choisir parmi les sommets n’appartenant pas à S un de dont la distance provisoire est minimale.

- Soit X ce sommet :-Mettre X dans S-Pour chaque sommet Y adjacent à X et qui n’est pas dans S :

- calculer d = distance provisoire X + poids(X,Y)- Si d < distance provisoire de Y associer a Y (d,X).

Algorithme de Moore-Dijkstra

RECHERCHE DE CHEMIN LE PLUS COURT

A la fin de l’algorithme de Moore-Dijkstra :

- les sommets qui ne sont pas dans S ne peuvent être atteints à partir du sommet source.

- pour tous les sommets de S :

- distance provisoire est la distance minimale à partir du sommet source.

- prédécesseur est le sommet qui précède dans le chemin le plus court depuis la source.

24/0

4/2

01

8

86

Page 44: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

44

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

24/0

4/2

018

87

88

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

24/0

4/2

01

8

88

Page 45: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

45

24/0

4/2

018

89

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

24/0

4/2

01

8

90

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

Page 46: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

46

24/0

4/2

018

91

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

24/0

4/2

01

8

92

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

Page 47: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

47

24/0

4/2

018

93

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

24/0

4/2

01

8

94

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

Page 48: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

48

24/0

4/2

018

95

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

24/0

4/2

01

8

96

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

Page 49: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

49

24/0

4/2

018

97

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

24/0

4/2

01

8

98

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

Page 50: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

50

24/0

4/2

018

99

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

24/0

4/2

01

8

100

RECHERCHE DE CHEMIN LE PLUS COURS

Exemple d’exécution :

Page 51: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

51

ARBRE COUVRANT DE POIDS MINIMUM

24/0

4/2

018

101

ARBRE COUVRANT

Soit G(E,V) un graphe.

Un arbre couvrant G’(E,V’) est une sous-graphe de G tel que :

G’ est un arbre

V’ ⊂ V

Si le nombre de sommets du graphe est n le nombre d’arrêtes de l’AC est n-1.

Le poids de G’ est défini par :

� = � ���

�,�∈��

24/0

4/2

01

8

102

Page 52: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

52

Exemple :

24/0

4/2

018

103

ARBRE COUVRANT

ARBRE COUVRANT DE POIDS MINIMUM

Arbre couvrant d’un graphe dont le poids total des arêtes est minimal.

24/0

4/2

01

8

104

Page 53: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

53

24/0

4/2

018

105

Arbre couvrant d’un graphe dont le poids total des arêtes est minimal.

ARBRE COUVRANT DE POIDS MINIMUM

Algorithme de Kruskal

24/0

4/2

01

8

106

ARBRE COUVRANT DE POIDS MINIMUM

Page 54: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

54

Exemple :

Appliquer l’algorithme de Kruskal au graphe suivant

24/0

4/2

018

107

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

108

ARBRE COUVRANT DE POIDS MINIMUM

Page 55: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

55

24/0

4/2

018

109

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

110

ARBRE COUVRANT DE POIDS MINIMUM

Page 56: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

56

24/0

4/2

018

111

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

112

ARBRE COUVRANT DE POIDS MINIMUM

Page 57: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

57

24/0

4/2

018

113

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

114

ARBRE COUVRANT DE POIDS MINIMUM

Page 58: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

58

24/0

4/2

018

115

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

116

ARBRE COUVRANT DE POIDS MINIMUM

Page 59: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

59

24/0

4/2

018

117

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

118

ARBRE COUVRANT DE POIDS MINIMUM

Page 60: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

60

24/0

4/2

018

119

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

120

ARBRE COUVRANT DE POIDS MINIMUM

Page 61: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

61

24/0

4/2

018

121

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

122

ARBRE COUVRANT DE POIDS MINIMUM

Page 62: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

62

24/0

4/2

018

123

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

124

ARBRE COUVRANT DE POIDS MINIMUM

Page 63: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

63

24/0

4/2

018

125

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

126

ARBRE COUVRANT DE POIDS MINIMUM

Page 64: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

64

24/0

4/2

018

127

ARBRE COUVRANT DE POIDS MINIMUM24/0

4/2

01

8

128

ARBRE COUVRANT DE POIDS MINIMUM

Page 65: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

65

LISTE DES ALGORITHMES DE LA THÉORIE

DES GRAPHES

Algorithmes de parcours d'un graphe

Algorithmes de Plus Courts Chemins

Algorithmes d'arbres couvrants de poids

minimum

Algorithmes pour les flots maximums

Algorithmes pour les flots à coût minimum

24/0

4/2

018

129

Algorithmes de parcours d'un graphe :

Algorithme de parcours en

largeur BFS (Breadth First Search)

Algorithme de parcours en

profondeur DFS (Depth First Search)

24/0

4/2

01

8

130

LISTE DES ALGORITHMES DE LA THÉORIE

DES GRAPHES

Page 66: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

66

Algorithmes de Plus Courts Chemins :

Algorithme de Dijkstra

Algorithme de Dantzig

Algorithme de Bellman-Moore

Algorithme de Ford-Bellman

24/0

4/2

018

131

LISTE DES ALGORITHMES DE LA THÉORIE

DES GRAPHES

Algorithmes d'arbres couvrants de poids minimum :

Algorithme de Kruskal

Algorithme de Prim

Algorithme de Borůvka

...

24/0

4/2

01

8

132

LISTE DES ALGORITHMES DE LA THÉORIE

DES GRAPHES

Page 67: GRAPHESET ALGORITHMES - COURSES...Exercice : Donner une méthode pour calculer le nombre d’arêtes d’un graphe complet non-orienté G de nsommets. 24/04/2018 22. 24/04/2018 12

24/04/2018

67

LISTE DES ALGORITHMES DE LA THÉORIE

DES GRAPHES

Algorithmes pour les flots maximums

Algorithme de Ford-Fulkerson

Algorithme de Roy

24/0

4/2

018

133

Algorithmes pour les flots à coût minimum

Algorithme de Busacker et Gowen

Algorithme de Klein

24/0

4/2

01

8

134

LISTE DES ALGORITHMES DE LA THÉORIE

DES GRAPHES