diff --git a/slides/cours_27.md b/slides/cours_27.md
index 10d649dae7e6a848a49b062a78a3e42fbabd905d..d4b750599926f598076a020385f93475174608e4 100644
--- a/slides/cours_27.md
+++ b/slides/cours_27.md
@@ -618,4 +618,24 @@ O(|V|)  u, fp = défiler(file_priorité)
 
 . . .
 
-* Si les deux sommets sont déjà couverts nous sommes sauvés (presque)!
\ No newline at end of file
+* Si les deux sommets sont déjà couverts nous sommes sauvés (presque)!
+
+# Algorithme de Kruskal
+
+## L'initialisation
+
+* Créer un ensemble de sommets pour chaque de sommet du graphe ($V_1$, $V_2$, ...):
+    * $V_1=\{v_1\}$, $V_2=\{v_2\}$, ...
+    * S'il y a $n$ sommets, il y a $n$ $V_i$.
+* Initialiser l'ensemble $A$ des arêtes "sûres" constituant l'arbre couvrant minimal, $A=\emptyset$.
+* Initialiser l'ensemble des sommets couverts $F=\emptyset$
+* Trier les arêtes par poids croissant dans l'ensemble $E$.
+
+## Mise à jour
+
+* Tant qu'il reste plus d'un $V_i$:
+    * Pour $(u,v)\in A$ à poids minimal:
+    * Retirer $(u,v)$ de $A$,
+    * Si $u\in V_i$ et $v\in V_j$ avec $V_i\cap V_j=\emptyset$:
+        * Ajouter $(u,v)$ à $A$;
+        * Fusionner $U$ et $V$ dans $F$.
\ No newline at end of file