This commit is contained in:
Mylloon 2021-12-24 00:20:57 +01:00
parent fb311794f3
commit 22f3aa30d6
Signed by: Anri
GPG key ID: A82D63DFF8D1317F
2 changed files with 5 additions and 5 deletions

View file

@ -1,12 +1,12 @@
#include "arbre.h" #include "arbre.h"
void convertisseurListeEnArbre(Liste *liste) { void listeVersArbre(Liste *liste) {
Cellule *curseur = *liste; Cellule *curseur = *liste;
while (curseur != NULL) { // parcours de la liste while (curseur != NULL) { // parcours de la liste
if (curseur->suivant != NULL) { // on créer un mini-arbre qu'on colle au reste de l'arbre seulement si le suivant existe if (curseur->suivant != NULL) { // on créer un mini-arbre qu'on colle au reste de l'arbre seulement si le suivant existe
Cellule *nouvelleCellule; Cellule *nouvelleCellule;
if ((nouvelleCellule = (Cellule*)malloc(sizeof(Cellule))) == NULL) { // on alloue de la mémoire pour notre nouvelle cellule (mini-racine) if ((nouvelleCellule = (Cellule*)malloc(sizeof(Cellule))) == NULL) { // on alloue de la mémoire pour notre nouvelle cellule (mini-racine)
printf("Impossible d'allouer de la mémoire supplémentaire (convertisseurListeEnArbre).\n"); // gestion de l'erreur printf("Impossible d'allouer de la mémoire supplémentaire (listeVersArbre).\n"); // gestion de l'erreur
exit(1); exit(1);
} }
/* TODO: TROUVER UN ENDROIT Où FREE CETTE NOUVELLE CELLULE A L'AVENIR */ /* TODO: TROUVER UN ENDROIT Où FREE CETTE NOUVELLE CELLULE A L'AVENIR */

View file

@ -16,8 +16,8 @@ typedef struct lettre {
int longueur; // longueur du code int longueur; // longueur du code
} Lettre; } Lettre;
// Convertis une liste en Arbre. // Convertis une liste (struct Liste) en arbre (struct Arbre).
void convertisseurListeEnArbre(Liste *liste); void listeVersArbre(Liste *liste);
// Encode un fichier. // Encode un fichier.
void compression(FILE *entree, FILE *sortie); void compression(FILE *entree, FILE *sortie);
@ -39,7 +39,7 @@ void decompression(FILE *entree, FILE *sortie);
*/ */
void assignationCode(Arbre arbre, int codeActuel, int longueur, Lettre *lettresListe, int *i, int *longueurTotale); void assignationCode(Arbre arbre, int codeActuel, int longueur, Lettre *lettresListe, int *i, int *longueurTotale);
// Convertis un arbre (struct Arbre) en Liste (struct Lettre). // Convertis un arbre (struct Arbre) en liste (struct Lettre).
Lettre * arbreVersListe(Arbre arbre, int taille, int *tailleTotale); Lettre * arbreVersListe(Arbre arbre, int taille, int *tailleTotale);
#endif #endif