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
Branches
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 ...@@ -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 else { // recherche récursif de la position à insérer + mise à jour du facteur d'équilibre
int cmp = preceed(key, get_tree_node_key(curr)); 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); 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); curr->right = insert_into_tree_node(curr->right, key, data, balanced, preceed);
} }
}//FIN PARTIE 1 }//FIN PARTIE 1
...@@ -545,9 +545,5 @@ static struct tree_node_t * remove_tree_node(struct tree_node_t * curr, void * k ...@@ -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 * tree_remove(struct tree_t * T, void * key) {
void* data = NULL; void* data = NULL;
struct tree_node_t* node = remove_tree_node(get_root(T), key, &data, tree_is_balanced(T), T->preceed); 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; return data;
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment