mirror of
https://github.com/BreizhHardware/projetCGroupe8.git
synced 2026-03-18 21:30:32 +01:00
Update NodeTrie.c
add comments
This commit is contained in:
@@ -7,27 +7,30 @@
|
||||
#include <stdio.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
//Fonction qui permet de créer un NodeTrie vide
|
||||
struct NodeTrie* createEmptyNodeTrie(){
|
||||
struct NodeTrie* trie = malloc(sizeof(struct NodeTrie));
|
||||
if(trie == NULL){
|
||||
printf("error malloc");
|
||||
return NULL;
|
||||
}
|
||||
//MAX_LETTERS vaut 29 pour contenir tout l'alphabet + '\'' + '-' + ' '
|
||||
for(int i = 0; i < MAX_LETTERS; i++){
|
||||
trie -> children[i] = NULL;
|
||||
trie -> children[i] = NULL; //On remplie un node trie de c'est 29 enfant, qu'on initialise a NULL
|
||||
}
|
||||
trie -> isName = false;
|
||||
trie -> isName = false; //Ca ne correspond pas à un prénom donc on met a false
|
||||
return trie;
|
||||
}
|
||||
|
||||
|
||||
//Fonction qui permet de supprimer un NodeTrie
|
||||
void deleteNodeTrie(struct NodeTrie** trie){
|
||||
//On boucle pour parcourir tout les enfant non NULL
|
||||
for(int i = 0; i<MAX_LETTERS; i++){
|
||||
if((*trie)->children[i]!=NULL){
|
||||
deleteNodeTrie(&(*trie)->children[i]);
|
||||
deleteNodeTrie(&(*trie)->children[i]); //On opère de façon récursive
|
||||
}
|
||||
}
|
||||
deleteList(&(*trie)->movie);
|
||||
free(*trie);
|
||||
*trie = NULL;
|
||||
deleteList(&(*trie)->movie); //Supprime les list contenu dans une node
|
||||
free(*trie); //On libère la mémoire du trie, donc on le "supprime"
|
||||
*trie = NULL;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user