Les pointeurs: Forme en "Anneaux"

Discussion dans 'Web, design' créé par k o D, 19 Octobre 2004.

Statut de la discussion:
Fermée.
  1. Offline
    k o D Belge !
    Voilà je suis à la recherche d'un maximum d'informations sur la structure "en anneaux" des pointeurs...

    Si vous pouviez me donner plus d'explication et éventuellement un bon site.

    Merci d'avance :wink:

    Ps: appelée aussi liste circulaires doublement chainées.
    k o D, 19 Octobre 2004
    #1
  2. Offline
    theodorus ex membre
    Moi aussi ça m'intéresserait, car je n'ai jamais trouvé de doc sur les listes circulaires en particulier.
    theodorus, 19 Octobre 2004
    #2
  3. Offline
    moustic Touriste
    Si tu connais la listes chainée classique qui se termine par null, la liste circulaire c'est tout bêtement le pointeur du dernier qui à la place d'être null, tu y place l'adresse du pointeur de tète.

    Sans oublier quand même de prévoir un pointeur de fin sur le dernier élément pour pas boucler infiniment
    moustic, 19 Octobre 2004
    #3
  4. Offline
    theodorus ex membre
    Ben ça on s'en doutait ptêt un ptit peu, hein ;)
    Mais est-ce que il y a des algorithmes spéciaux propres aux listes circulaires? Des trucs qu'on ne peut pas faire avec des listes "normales"?
    theodorus, 19 Octobre 2004
    #4
  5. Offline
    moustic Touriste
    Ben faut voir quand on veux faire quelque chose ce qui est le mieux les listes circulaires c'est bien si tu doit parcourir plusieurs fois ta liste.

    Attention listes doublements chainées ça veux dire que dans ta structure, tu à 2 pointeurs, 1 qui pointe sur l'élément suivant et 1 sur l'élément précédent, ce qui permet de parcourir la liste dans les 2 sens. Une liste doublement chainée n'est pas necessairement circulaire, tu peux avoir un pointeur au début = null et un pointeur à la fin = null
    moustic, 19 Octobre 2004
    #5
  6. Offline
    theodorus ex membre
    Mais je peux parcourir ma liste plusieurs fois sans qu'elle soit circulaire puisque de toutes façons j'ai la tête quelque part en permanence (enfin y a intérêt :) ). En plus dans la liste circulaire si je veux me situer, je dois reconnaître la tête, donc il faut faire un test à chaque itération quand je parcours la boucle, alors que les listes linéaires non... Où est l'avantage?
    theodorus, 19 Octobre 2004
    #6
  7. Offline
    k o D Belge !
    J'ai trouvé les schémas:

    [IMG]

    [IMG]

    [IMG]

    Je ne pense pas que l'on pourra mieux me répondre que celà sauf en me fesant le codeen pascal lui même lol

    Donc merci beaucoup :wink:
    k o D, 20 Octobre 2004
    #7
  8. Offline
    Smart Touriste
    L'avantage des anneaux c'est que lorsque tu veux enregistrer tes données et supprimer les plus anciennes, il suffit de les enregistrer sur ce qui est pointé par le pointeur "suivant".
    C'est beaucoup utilisé dans les machines comme les scanner par exemple, ou les oscilloscopes (des trucs qui affichent des données sur une période, de 30 secondes par exemple, ca garde en mémoire que les 30 dernieres secondes et ca enregistre en boucle).
    Smart, 20 Octobre 2004
    #8
  9. Offline
    k o D Belge !
    Ouep ok

    Enfin là de toute manière l'utilité je m'en fou pour le moment, c'est vraiment juste le codage. :D
    k o D, 21 Octobre 2004
    #9
  10. Offline
    theodorus ex membre
    J'y avais jamais pensé, merci. (Moi qui n'utilisait que des piles pour ça... LoL)
    theodorus, 21 Octobre 2004
    #10
Statut de la discussion:
Fermée.