Skip to content
Snippets Groups Projects
Commit 4bb3166b authored by vitawrap's avatar vitawrap
Browse files

Trees: insertion pour cmp 0 et pas de freeKey dans tree_remove

parent cd8b46a7
No related branches found
No related tags found
No related merge requests found
......@@ -340,9 +340,9 @@ static struct tree_node_t * insert_into_tree_node(struct tree_node_t * curr, voi
}
else { // recherche récursif de la position à insérer + mise à jour du facteur d'équilibre
int cmp = preceed(key, get_tree_node_key(curr));
if (cmp < 0) { //Cas 1 : clé du nv noeud inf a noeud curr => nv noeud dans curr->left
if (cmp < 0) { //Cas 1 : clé du nv noeud inf a noeud curr => nv noeud dans curr->left
curr->left = insert_into_tree_node(curr->left, key, data, balanced, preceed);
} else if (cmp > 0) { //Cas 2 : clé du nv noeud sup a noeud curr => nv noeud dans curr->right
} else { //Cas 2 : cmp 0 OU clé du nv noeud sup a noeud curr => nv noeud dans curr->right
curr->right = insert_into_tree_node(curr->right, key, data, balanced, preceed);
}
}//FIN PARTIE 1
......@@ -545,9 +545,5 @@ static struct tree_node_t * remove_tree_node(struct tree_node_t * curr, void * k
void * tree_remove(struct tree_t * T, void * key) {
void* data = NULL;
struct tree_node_t* node = remove_tree_node(get_root(T), key, &data, tree_is_balanced(T), T->preceed);
if (node)
{
T->freeKey(key);
}
return data;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment