diff --git a/slides/bst.md b/slides/bst.md
new file mode 100644
index 0000000000000000000000000000000000000000..bef32b543c2e2a44ffe9b27668ccc93d98135366
--- /dev/null
+++ b/slides/bst.md
@@ -0,0 +1,91 @@
+---
+title: Arbres de recherche binaires
+date: 2021-03-24
+---
+
+# Arbres binaires de recherche 
+
+Qu'est-ce qu'un *arbre binaire de recherche* ou *binary search tree*?
+
+## Définition
+
+1. Arbre binaire: chaque nœud à **au plus** deux sommets enfants.
+2. Chaque nœud contient une clé.
+3. Pour chaque nœud, tous les nœud du **sous-arbre gauche** ont une clé 
+   inférieure ou égale au nœud considéré et tous les nœuds du **sous-arbre 
+   droit** du nœud considéré ont une clé supérieure ou égale au nœud considéré.
+
+La propriété 3 est connue sous le nom de propriété ABR (ou BST property).
+
+## Utilité
+
+* Recherche de clé, *min/max*.
+* File de priorité.
+* Parcours ordonné (parcours infixe) => tri.
+
+# Exemple
+
+## Un arbre binaire de recherche d'entiers
+
+![Exemple d'ABR contenant 9 valeurs. Source: 
+Wikipedia.](https://upload.wikimedia.org/wikipedia/commons/thumb/d/da/Binary_search_tree.svg/1024px-Binary_search_tree.svg.png){width=60%}
+
+# Structure de données
+
+## Fonctionnalités importantes
+
+\footnotesize
+
+1. Insertion de clé
+2. Recherche de clé
+3. Suppression de clé
+
+## Récursivité
+
+La propriété ABR est **récursive** (les sous-arbres doivent être ABR):
+
+* L'enfant de gauche est plus petit que nœud courant?
+* L'enfant de droite est plus petit que nœud courant?
+* Le sous-arbre de gauche/droite est-il ABR?
+
+<!-- ```C -->
+<!-- bool is_bst(tree) { -->
+<!--   if (is_empty(tree)) return true; -->
+<!--   // l'enfant de gauche est plus grand => faux -->
+<!--   if (!is_empty(tree.left) && tree.left.key > tree.key) return false; -->
+<!--   // l'enfant de droite est plus petit => faux -->
+<!--   if (!is_empty(tree.right) && tree.right.key < tree.key) return false; -->
+<!--   // récursivement si les sous-arbres sont pas des ABR -->
+<!--   if (!is_bst(tree.left) || !is_bst(tree.right)) return false; -->
+<!-- } -->
+<!-- ``` -->
+
+# L'insertion
+
+\footnotesize
+
+Insertion récursive:
+
+```C
+tree insert(tree, key) {
+    // fin de la récursion, on crée le noeud et retourne
+    si l'arbre est vide:
+        return create_node(key);
+    // recherche d'où insérer
+    si la clé est plus petite que le noeud courant:
+        si le sous-arbre gauche est vide:
+            sous-arbre gauche = create_node(key);
+        sinon:
+            return insert(sous-arbe gauche, key);
+    si la clé est plus grande que le noeud courant:
+        si le sous-arbre droit est vide:
+            sous-arbre droit = create_node(key);
+        sinon:
+            return insert(sous-arbre droit, key);
+    // on retourne l'arbre!
+    return tree;
+}
+```
+
+
+
diff --git a/slides/munit.md b/slides/munit.md
index fcec7fe316442c0fe0b986c0cbe1bf0edcc22d81..a48b04b21bf267a5ff0af8511284d82328c3709e 100644
--- a/slides/munit.md
+++ b/slides/munit.md
@@ -3,7 +3,7 @@ title: Framework de tests
 date: 2021-03-17
 ---
 
-# Tests manuels (2/2)
+# Tests manuels (1/2)
 
 ## Instructions conditionnelles
 
@@ -24,7 +24,7 @@ int main() {
 
 ```bash
 $ ./tests
-Error. Expected 1, Actual -2.
+Error. Expected -1, Actual -2.
 ```
 
 **Erreurs détaillées** mais *long à écrire* et *pas généralisable*.