A la manière de qsort(). Il faut probablement une fonction externe de traitement.Envoyé par sorry60
En principe, on crée une fonction de parcours de la liste qui appelle une fonction utilisateur (callback) dont les paramètres sont au minimum l'adresse du noeud courant et probablement un pointeur void * sur le contexte utilisateur (NULL si non utilisé).
Une fois qu'on a l'adresse du noeud à retirer, on appelle la fonction qui va bien pour refaire les liens et libérer ce qui doit l'être... Attention, les données de utilisateur (allocation/libération) sont de la responsabilité de celui-ci. Chacun son boulot.
La générécité a un coût, sinon, on change de langage (par exemple, C++ et ses templates)
Partager