ZeSword a écrit :
Dans ton modèle, si tu n'insères que par un côté, ça permet moins de choses que l'idée de Toufmade (par ex. quand, dans ton modèle, tu rajoutes un livre, le temps de lecture "file" --- c'est-à-dire, dans le cas où il est lu par le côté file et pas par le côté pile (qui est le côté d'insertion) --- va être égal à la taille complète de la liste quand tu as inséré ; alors que dans le modèle de Toufmade, tu pouvais séparer en 2 et payer au plus la taille de la liste "file").
Non, comme je disais il permet des choses différentes :
Madmox a écrit :
tu n'as aucune garantie qu'un "vieux" livre de la LIFO sera lu un jour (si la liste n'est jamais complètement vidée par exemple), et tu n'a aucune chance qu'un livre de la FIFO soit lu rapidement si elle a déjà un bon nombre d'éléments
Avec le modèle mono-liste, tu as un temps de lecture maximal garanti pour
tous les livres (nb de livres
total au moment de l'insertion * coef_file, avec 0 <= coef_file <= 1), et
tous les livres ont une chance d'être lus rapidement (plus grande si tu augmentes le coef_pile, avec coef_pile = 1 - coef_file).
Dans le modèle bi-liste, seuls les bouquins placés dans la file ont un temps de lecture garanti (certes inférieur à celui du modèle mono-liste : nb de de livres
dans la file au moment de l'insertion * coef_file), mais les livres que tu mets dans la pile on un temps de lecture différent, potentiellement infini (si la pile n'est jamais vidée).
ZeSword a écrit :
C'est pour ça que je disais que pour que ton modèle permette plus de choses que celui de Toufmade, il fallait permettre d'insérer où tu veux
Ça ruinerait complètement l'intérêt du modèle, en enlevant la garantie qu'un bouquin soit lu un jour...
ZeSword a écrit :
ou, si tu veux qu'il fasse pareil que celui de Toufmade, il faut garder en mémoire où insérer "vers le milieu", à l'endroit qui correspondrait peu ou prou au fait d'avoir les deux listes de Toufmade à la suite, et de garder l'endroit où elles fusionnent
Je ne vois pas en quoi ça donnerait un modèle équivalent à celui que décrit Toufmade. Si tu places tes insertions "toujours au milieu" (ou "alternativement à droite et à gauche de l'insertion précédente"), ça va juste créer 2 files, pas une pile et une file. Si tu insères toujours à droite (ou toujours à gauche) de l'insertion précédente, ça va juste conduire à l'épuisement d'une des "moitiés", et revenir sur le modèle mono-liste une fois ce stade dépassé.
Alors soit je passe à côté d'un truc évident, soit c'est toi qui a mal compris le ou les modèles qu'on a présentés ^^