Skip to content
Snippets Groups Projects
Commit 700cb65d authored by paul.albuquer's avatar paul.albuquer
Browse files

changed named and structure suppression

parent a3539480
No related branches found
No related tags found
No related merge requests found
Pipeline #38370 passed
......@@ -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
```
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment