Vous êtes sur la page 1sur 3

NFA010 - Correction des exercices

de la deuxième séance
Anil CASSAM CHENAI
20 juin 2012

Note de définition : Un graphe est dit simple s’il n’a pas de lien multiple (n
double, ni triple, etc sinon on parlerait de multigraphe). Par contre, pour un graphe
orienté simple, on peut permet deux arcs entre des sommets distincts x et y a
condition qu’un des arcs aille de x à y et l’autre de y à . Parfois dans la litérature
on prend aussi comme définition qu’un graphe simple n’a pas de boucles (un arc
ayant le même sommet source et cible). Ici dans ce cours n’est pas le cas, on précise
graphe simple, orienté ou non, sans boucle quand on veut les éliminer.

1 Exercice 1
Quel est le nombre maximal d’arcs d’un graphe orienté simple à n sommets ? d’un
graphe orienté simple sans boucle à n sommets ?

Solution :
On peut travailler sur la représentation d’un graphe, mais cela peut faire man-
quer des arcs. Il vaut mieux pour cela avoir une représentation où tous les arcs
potentiels sont prévus et activés ou non. C’est l’objectif de la forme matricielle du
graphe. C’est une matrice n.n donc on peut avoir n2 arc au maximum, incluant les
boucles. Ne pas considérer les boucles revient à mettre des 0 sur la diagonale, donc
il nous reste au maximum n2 − n arcs à positionner.

2 Exercice 2
Combien y a-t’il de graphes orientés simples ayant un ensemble donné de 2 sommets
? De 3 sommets ? De 4 sommets ? De n sommets ?

Solution :
On va reprendre la vision matricielle de notre graphe. Le nombre de graphe est
le nombre de façon de mettre des un dans un ensemble de n.n cases. On à donc
deux possibilités pour chaque case (0 ou 1), donc le nombre possible de graphes est
2
2n . Donc pour 2 sommets 24 = 16, pour trois sommets 29 = 512, pour quatre
sommets 216 = 65536

3 Exercice 3
Représenter tous les graphes orientés (simples) à 2 sommets, tous les graphes ori-
entés comportant 3 sommets et 3 arcs.

Solution :

1
Figure 1: Graphes orientés simples à 4 sommets

Les coefficients donnant le nombre de graphes avec k arcs pour 4 sommets sont
ceux du binomes 0 arc: 1, 1 arc: 4, 2 arcs: 6, 3 arcs: 4, 4 arc: 1

4 Exercice 4
On représente un graphe orienté par sa matrice d’adjacence - matrice binaire décrit
dans la leçon 1 - de dimension (n,n).
• Ecrire un algorithme pour déterminer si le graphe est sans boucle.
• Ecrire un algorithme pour faire afficher tous les successeurs d’un sommet
donné.
• Ecrire un algorithme pour faire afficher tous prédécesseurs d’un sommet donné.
Solution :
Si un graphe orienté est sans boucle, on sait qu’en au plus n sauts on doit ne
plus avoir de sucesseur, sinon on retomberait sur un des sommets déjà visité. Cela
implique que M n = 0, donc notre algorithme revient à calculer toutes les puissance
de notre matrice binaire et voir si elle s’annule. On peut faire la multiplication
décimale, mais aussi une multiplication binaire (1+1=1 - on regarde si oui ou non
deux sommets sont liés par au moins un chemin) si on veut simplifier le calcul de la
puissance. (pour mieux comprendre le raisonnement on pourra regarder le chapitre
5 qui entre dans le détail de la manipulation de telles matrices pour le calcul de la
fermeture transitive en particulier et des composantes fortement connexes.)
L’ensemble des successeurs du sommet i est Γ+ (i). On sait que dans la représentation
matricielle, la liste des successeurs correspond à toutes les colonnes ayant un coef-
ficient non nul sur la ligne i de la matrice. Idem pour le prédécesseur de j mais on
regarde maintenant les indexes de lignes non nulls.

5 Exercice 5
On dit qu’un graphe G est biparti s’il est possible de partitionner l’ensemble de ses
sommets en deux sous-ensembles tels que chaque arête n’ait pas ses deux extrémités
dans un même sous ensemble (et que ces deux ensemble n’ait pas d’intersection !).

2
Prouver que si G est biparti, alors G n’a pas de cycle de longueur impaire.

Solution :
On voit bien qye l’aspect biparti implique que chaque parcours d’un arc fait
passer d’un ensemble à l’autre (notés A et B). Donc si on prend un chemin (x1 ,x2 ),
on a x1 dans A et x2 dans B. De même pour un chemin a n sommets (x1 ,x2 , ... xn )
on a la même alternance et xn et dans A si n est pair, dans B dans le cas contraire.
Si on a un cycle, cela implique que x1 =xn mais si n est impaire on a aussi qu’il sont
respectivement dans A et B donc dans l’intersection de A et B qui est vide donc ce
n’est pas possible et un tel cycle n’existe donc pas.