La collection VecDeque<T>

1. Présentation

Le type VecDeque est une structure définie dans std::collections. Elle correspond à un tampon circulaire et redimensionnable. Circulaire car on accède aussi facilement au début qu’à la fin de ce tampon (buffer). Redimensionnable, car à l’instar du vecteur, on peut faire varier la taille de cette collection.

VecDeque est donc ni plus ni moins qu’une file d’attente à double extrémité. En effet, le vecteur permet assez facilement de gérer une file d’attente LIFO (Last In, First Out), c’est-à-dire « dernier arrivé, premier sorti » grâce aux méthodes push et pop, particulièrement adaptées à un comportement de type pile (stack).

En revanche, si on veut modéliser une file d’attente FIFO (First In, First Out), c’est-à-dire « premier arrivé, premier sorti », le vecteur n’est plus guère adapté, ou du moins les accès sont rapidement coûteux en temps. D’où l’alternative intéressante de la collection VecDeque, qui permet de gérer la file d’attente depuis ses deux extrémités.

Représentons le fonctionnement en mémoire de la collection VecDeque :

images/11EP1.png

Représentation d’un VecDeque en mémoire

Comme on peut le constater, le VecDeque occupe un espace dans le tas, qui est parcouru de façon...

Pour consulter la suite, découvrez le livre suivant :
couv_EIRUST.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Introduction
Suivant
La collection LinkedList<T>