Files d'attente
Résolu/Fermé
marie12_2000
Messages postés
27
Date d'inscription
vendredi 22 mars 2019
Statut
Membre
Dernière intervention
29 février 2020
-
29 mars 2019 à 11:56
marie12_2000 Messages postés 27 Date d'inscription vendredi 22 mars 2019 Statut Membre Dernière intervention 29 février 2020 - 29 mars 2019 à 15:10
marie12_2000 Messages postés 27 Date d'inscription vendredi 22 mars 2019 Statut Membre Dernière intervention 29 février 2020 - 29 mars 2019 à 15:10
A voir également:
- Files d'attente
- Discord en attente du terminal ✓ - Forum MacOS
- Recover my files pc - Télécharger - Récupération de données
- Confirmation de livraison en attente dhgate - Forum Consommation & Internet
- En attente instagram - Forum Instagram
- Freebox attente d'une connexion reseau - Forum Freebox
1 réponse
[Dal]
Messages postés
6198
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
13 décembre 2024
1 096
Modifié le 29 mars 2019 à 12:37
Modifié le 29 mars 2019 à 12:37
Bonjour marie12_2000,
Si la file a une taille donnée, par exemple parce qu'elle est implémentée sous la forme de tableau en C de 5 éléments, alors le comportement suivant est en principe implémentable :
- comme une file d'attente, lorsqu'un nouvel élément est intégré à la file, ce nouvel élément est placé à l'arrière de la file
- à mesure que l'on ajoute des éléments, l'arrière est successivement à 0, 1, 2, 3, 4, et le début de la file à 0,
- si la capacité de la file est pleine, avant de pouvoir insérer un nouvel élément, l'élément qui est en tête de la file doit sortir de la file pour laisser la place au nouveau
- plutôt que de décaler tout le contenu du tableau C, on peut juste déplacer la position de la tête de file
- le début de file passera à la position 1, et la position 0 devient l'arrière de la file, où le nouvel élément peut être placé
- etc.
Pour énumérer les éléments de la file, on partira de la tête de file, on parcours le tableau jusqu'à la fin et on boucle sur la position 0 si on n'a pas parcouru tous les éléments de la liste, jusqu'à ce que tous les éléments soient parcourus.
On manque de contexte pour savoir ce que représentent exactement les différents éléments de ta ligne de code (qui n'est pas en C d'ailleurs), mais si "mod" représente bien "modulo" et donc le reste de la division entière (opérateur
Dal
Si la file a une taille donnée, par exemple parce qu'elle est implémentée sous la forme de tableau en C de 5 éléments, alors le comportement suivant est en principe implémentable :
- comme une file d'attente, lorsqu'un nouvel élément est intégré à la file, ce nouvel élément est placé à l'arrière de la file
- à mesure que l'on ajoute des éléments, l'arrière est successivement à 0, 1, 2, 3, 4, et le début de la file à 0,
- si la capacité de la file est pleine, avant de pouvoir insérer un nouvel élément, l'élément qui est en tête de la file doit sortir de la file pour laisser la place au nouveau
- plutôt que de décaler tout le contenu du tableau C, on peut juste déplacer la position de la tête de file
- le début de file passera à la position 1, et la position 0 devient l'arrière de la file, où le nouvel élément peut être placé
- etc.
Pour énumérer les éléments de la file, on partira de la tête de file, on parcours le tableau jusqu'à la fin et on boucle sur la position 0 si on n'a pas parcouru tous les éléments de la liste, jusqu'à ce que tous les éléments soient parcourus.
On manque de contexte pour savoir ce que représentent exactement les différents éléments de ta ligne de code (qui n'est pas en C d'ailleurs), mais si "mod" représente bien "modulo" et donc le reste de la division entière (opérateur
%en C) il est typiquement utilisé sur la dimension de la file, pour calculer un index adapté à la plage des valeurs possibles, dans notre exemple le reste de la division entière par 5 donne, quel que soit le dividende, un résultat de 0 à 4.
Dal
29 mars 2019 à 15:10