From 700cb65dcf9f74eceb768eb35c7b7013bb21ce08 Mon Sep 17 00:00:00 2001
From: "paul.albuquer" <paul.albuquerque@hesge.ch>
Date: Thu, 13 Mar 2025 17:22:15 +0100
Subject: [PATCH] changed named and structure suppression

---
 slides/cours_17.md | 38 ++++++++++++++++++--------------------
 1 file changed, 18 insertions(+), 20 deletions(-)

diff --git a/slides/cours_17.md b/slides/cours_17.md
index d48198f..0822f97 100644
--- a/slides/cours_17.md
+++ b/slides/cours_17.md
@@ -239,24 +239,22 @@ flowchart TB;
 
 # Le pseudo-code de la suppression
 
-## Pour une feuille ou absent (ensemble)
+## Pour une feuille ou clé absente (ensemble)
 
 ```
-arbre suppression(tree, clé)
-    sub_tree = position(tree, clé)
-    si est_vide(sub_tree) ou clé(sub_tree) != clé
-        retourne vide
-    sinon
-        si est_feuille(sub_tree) et clé(sub_tree) == clé
-            nouvelle_feuille = parent(tree, sub_tree)
-            si est_vide(nouvelle_feuille)
-                arbre = vide
-            sinon 
-                si gauche(nouvelle_feuille) == sub_tree
-                    gauche(nouvelle_feuille) = vide
-                sinon
-                    droite(nouvelle_feuille) = vide
-        retourne sub_tree
+booléen suppression(tree, clé)
+    noeud = position(tree, clé)
+    si est_vide(noeud) ou clé(noeud) != clé
+        retourne faux    
+    si est_feuille(noeud)
+        noeud_parent = parent(tree, noeud)
+        si est_vide(noeud_parent)
+            noeud = vide
+        sinon si gauche(noeud_parent) == noeud
+            gauche(noeud_parent) = vide
+        sinon si droite(noeud_parent) == noeud
+            droite(noeud_parent) = vide
+    retourne vrai
 ```
 
 # Il nous manque le code pour le `parent`
@@ -266,11 +264,11 @@ arbre suppression(tree, clé)
 . . .
 
 ```
-arbre parent(tree, sub_tree)
+arbre parent(tree, noeud)
     si est_non_vide(tree)
         actuel = tree
         parent = actuel
-        clé = clé(sub_tree)
+        clé = clé(noeud)
         faire
             si (clé != clé(actuel))
                 parent = actuel
@@ -279,8 +277,8 @@ arbre parent(tree, sub_tree)
                 sinon
                     actuel = droite(actuel)
             sinon
-                retour parent
-        tant_que (actuel != sub_tree)
+                retourne parent
+        tant_que (actuel != noeud)
     retourne vide
 ```
 
-- 
GitLab