TP Algo
TP Algo
h>
#include <stdlib.h>
#include <ctype.h>
if (*head == NULL)
return;
do {
swapped = 0;
ptr1 = *head;
return occurrences;
}
*head = current;
int main() {
Node* myList = NULL;
ajouterTrie(&myList, ’d’);
ajouterTrie(&myList, ’a’);
ajouterTrie(&myList, ’c’);
ajouterTrie(&myList, ’b’);
ajouterTrie(&myList, ’a’);
ajouterTrie(&myList, ’d’);
printf("Liste initiale : ");
Node* current = myList;
while (current != NULL) {
printf("%c ", current->data);
current = current->next;
}
printf("\n");
trierListe(&myList);
printf("Liste trie : ");
current = myList;
while (current != NULL) {
printf("%c ", current->data);
current = current->next;
}
printf("\n");
inverserListe(&myList);
printf("Liste inverse : ");
current = myList;
while (current != NULL) {
printf("%c ", current->data);
current = current->next;
}
printf("\n");
int* occurrences = compterOccurrences(myList);
printf("Occurrences de chaque caractre : ");
for (int i = 0; i < 26; i++) {
if (occurrences[i] > 0) {
printf("%c:%d ", ’a’ + i, occurrences[i]);
}
}
printf("\n");
supprimerDoublons(&myList, ’a’);
printf("Liste aprs suppression des doublons de ’a’ : ");
current = myList;
while (current != NULL) {
printf("%c ", current->data);
current = current->next;
}
printf("\n");
free(myList);
free(occurrences);
return 0;
}