J'ai un struct, avec un nom et un seul nœud appelé nextNameListe liés Tri avec des chaînes en C
Il est une liste chaînée, et ma tâche est de créer la liste, en fonction de l'ordre alphabétique des cordes .
Alors ssi j'entre Joe Zolt et Arthur que je devrais obtenir ma liste structurée comme
Joe
Than
Joe Zolt
Than
Arthur Joe Zolt
J'ai des problèmes pour implémenter le c orrect Algorithm, qui placerait les pointeurs dans le bon ordre.
C'est ce que j'ai à partir de maintenant. Temp serait le nom que l'utilisateur vient d'entrer et tente de mettre dans la liste, namebox est juste une copie de ma racine, étant toute la liste
if(temp != NULL)
{
struct node* namebox = root;
while (namebox!=NULL && (strcmp((namebox)->name,temp->name) <= 0))
{
namebox = namebox->nextName;
printf("here");
}
temp->nextName = namebox;
namebox = temp;
root = namebox;
This Works en ce moment, si j'entrer des noms tels que CCC BBB que AAA
I Get Back AAA BBB CCC quand j'imprimer
Mais si je mets AAA BBB CCC, lorsque j'imprime je reçois seulement CCC, il coupe l'arrêt précédent.
Edit:
que quelqu'un peut me montrer ce que le code ressemblerait, je ne peux pas le faire descendre.
Ah ok je comprends, maintenant sa juste mise en œuvre. Est-ce que cela voudrait dire que je devrais créer un scénario pour quand strcmp ((namebox) -> nom, temp-> name)> = 0 (clé ici étant> =)? – GreenMethod