// initialisation de l’algorithme
pour i= 1, . . . , n faire
p(i)←0;
n(i)← |N+(i)|;
p(i0)←i0;
i←i0;
// on continue tant qu’on n’est pas revenu sur i0en visitant tous ses successeurs
tant que n(i0)>0ou i6=i0faire
// on teste si tous les successeurs de iont été vus
si n(i)6= 0 alors
sélectionner parmi les successeurs de ile sommet jvenant en position n(i);
n(i)←n(i)−1;
si p(j) = 0 alors
p(j)←i;
i←j;
sinon
// on remonte d’un cran en revenant sur le sommet qui a permis d’atteindre i
// on dit qu’on ”ferme” le sommet i
i←p(i)
Algorithme 1 : Parcours en profondeur dans un graphe
Exercice 2 : Ordonnancement
La mise en exploitation d’un nouveau gisement minier demande la réalisation d’un certain nombre de
tâches. Le tableau suivant représente ces différentes tâches avec leurs relations d’antériorité.
Tâche Description Durée (en jours) Tâches
antérieures
A Obtention d’un permis d’exploitation 120 -
B Établissement d’une piste de 6 km 180 A
C Transport et installation à pied d’œuvre de 2 sondeuses 3 B
D Création de bâtiments provisoires pour le bureau des plans, 30 B
le logement des ouvriers sondeurs
E Goudronnage de la piste 60 B
F Adduction d’eau 90 D
G Campagne de sondage 240 C,D
H Forage et équipement de trois puits 180 E,F,G
I Transport et installation au fond du matériel d’exploitation 30 J,H
J Construction de bureaux et logements, ouvriers et ingénieurs 240 E,F,G
K Traçage et aménagement du fond 360 J,H
L Construction d’une laverie 240 J,H
Q8: Déterminez les dates au plus tôt et les dates au plus tard de chaque tâche, ainsi que le temps minimum
de réalisation de l’ensemble.
Q9: Quelles sont les marges totales de tous les sommets ?
Q10: Donnez un chemin critique.
Exercice 3 : Flots
Un organisme d’aide sociale dispose de 100 appartements pour loger 100 familles. On a les données
suivantes :
Nombre de personnes de la famille 1 2 3 4 5 et plus
Nombre de familles 10 13 22 23 32
Nombre de pièces de l’appartement 1 2 3 4 5
Nombre d’appartements 8 18 20 40 14