diff --git a/slides/cours_15.md b/slides/cours_15.md index b1743bb4da085c6067c398e0cdef8bb8a3ff6ada..c95c54338d20de857c3c4ff2fc5a56fbd689335d 100644 --- a/slides/cours_15.md +++ b/slides/cours_15.md @@ -883,6 +883,10 @@ arbre position(arbre, clé) suivant = droite(arbre) tant que clé(arbre) != clé && est_non_vide(suivant) arbre = suivant + si clé < clé(arbre) + suivant = gauche(arbre) + sinon + suivant = droite(arbre) returne arbre ``` @@ -921,6 +925,8 @@ tree_t position(tree_t tree, key_t key) { current->left; while (key != current->key && NULL != subtree) { current = subtree; + subtree = key > current->key ? current->right : + current->left; } } return current;