Adding bubble sorter

This commit is contained in:
Mylloon 2021-12-19 19:44:49 +01:00
parent 0ff62870ba
commit 8d044fdd66
2 changed files with 14 additions and 1 deletions

13
liste.c
View file

@ -46,7 +46,20 @@ void viderListe(Liste liste) {
} }
void trierListe(Liste *liste) { void trierListe(Liste *liste) {
if (*liste != NULL) // si la liste n'est pas vide
for (Cellule *i = *liste; i->suivant != NULL; i = i->suivant) // premier curseur
for(Cellule *j = i->suivant; j != NULL; j = j->suivant) // second curseur
if (i->frequence > j->frequence) { // si besoin de faire un échange, on le fais
Cellule temporaire = *j;
temporaire.lettre = j->lettre;
temporaire.frequence = j->frequence;
j->lettre = i->lettre;
j->frequence = i->frequence;
i->lettre = temporaire.lettre;
i->frequence = temporaire.frequence;
}
} }
void ajouterEnTete(Liste *liste, Cellule *cellule) { void ajouterEnTete(Liste *liste, Cellule *cellule) {

View file

@ -32,7 +32,7 @@ void afficherListe(Liste liste, FILE *fichier);
// Vide la liste // Vide la liste
void viderListe(Liste liste); void viderListe(Liste liste);
// Trie la liste en fonction des occurences // Trie la liste en fonction des occurences (tri à bulle)
void trierListe(Liste *liste); void trierListe(Liste *liste);
// Ajoute une cellule en tête de liste // Ajoute une cellule en tête de liste