Adloun

Kruskal, à la main

Exercice · niveau 2 · informatique (MP2I/MPI), chapitre 23 — Unir & trouver, arbres couvrants

Énoncé

Sur le graphe à sept sommets dont les arêtes sont

dérouler Kruskal : donner l'ordre de tri, les arêtes prises, les arêtes écartées et le poids total.

Corrigé

Ordre de tri (poids croissant ; les ex æquo se départagent comme on veut) :


ad(5) ce(5) df(6) ab(7) be(7) bc(8) ef(8) bd(9) eg(9) fg(11) de(15)

Le déroulé, en suivant les classes :

ArêteClasses avantDécisionClasses après
prise
prise
prise
prise
prise
et ensembleécartée---
et ensembleécartée---
ensembleécartée---
prisetout
ensembleécartée---
ensembleécartée---

Six arêtes prises — soit , comme annoncé —, cinq écartées, et un poids total de

Une force brute sur les sous-ensembles confirme : ce graphe possède arbres couvrants, le plus léger pèse , et c'est le seul de ce poids.

Deux remarques de méthode. L'algorithme s'arrête quand il a arêtes : les quatre dernières lignes du tableau sont du travail inutile, et une mise en œuvre soignée sort de la boucle dès que le compteur atteint . Et si, en fin de parcours, on n'en a pas , c'est que le graphe n'est pas connexe — Kruskal le détecte sans effort supplémentaire.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.