diff --git a/binary_search_tree.md b/binary_search_tree.md index 43b7ff94306cdf2c52aa3cd3d88ea68581c98bf6..ad2c1651c60dbc58046e3ea5cf1fdb0b021dd042 100644 --- a/binary_search_tree.md +++ b/binary_search_tree.md @@ -66,27 +66,26 @@ node_t *bst_create(); // création d'un arbre vide (retourne NULL) void bst_destroy(node_t *tree); // détruit l'arbre et vide la mémoire void bst_print(node_t *tree); // affiche l'arbre (voir plus bas) -// vérifie si l'arbre est vide -bool bst_is_empty(node_t *tree); - -// insertion de val dans l'arbre +// insertion de val dans l'arbre et retourne l'arbe (ou NULL si problème) node_t *bst_insert(node_t *tree, int val); // efface le premier élément contenant la valeur val -// l'arbre +// l'arbre et retourne l'arbre (ne fait rien si val est absente) node_t *bst_delete(node_t *tree, int val); // la valeur val est-elle présente dans l'arbre? bool bst_is_present(node_t *tree, int val); +// retourne le noeud où la valeur val se trouve (NULL si absent) +node_t *bst_search(node_t *tree, int val); // l'arbre est-il un arbre binaire de recherche? bool bst_is_bst(node_t *tree); -// retourne le noeud avec la valeur minimale de l'arbre +// retourne le noeud avec la valeur minimale de l'arbre (NULL s'il y a pas) node_t *bst_find_min_node(node_t *tree); -// retourne la valeur la plus petite stockée dans l'arbre +// retourne la valeur la plus petite stockée dans l'arbre (ou MIN_INT) int bst_find_min(node_t *tree); -// retourne le noeud avec la valeur maximale de l'arbre +// retourne le noeud avec la valeur maximale de l'arbre (NULL s'il y a pas) node_t *bst_find_max_node(node_t *tree); -// retourne la valeur la plus grande stockée dans l'arbre +// retourne la valeur la plus grande stockée dans l'arbre (ou MAX_INT) int bst_find_max(node_t *tree); ``` @@ -95,9 +94,10 @@ int bst_find_max(node_t *tree); Remarque # -Vous devrez probablement écrire d'autres fonctions "utilitaires"" dans votre +Vous devrez probablement écrire d'autres fonctions "utilitaires" dans votre librairie mais les fonctions ci-dessus sont celles que vous exposerez à -l'utilisatrice. +l'utilisatrice (p.ex. la création d'un nœud, ou la vérification si l'arbre est +vide). ---