Uploaded by MOHAMED GHARBI

STL LIST (1)

advertisement
STL LIST
INTRODUCTION
FONDEMENT THEORIQUE
Plan
DEMONSTRATION:
exemple de code
Biblioghraphie:
INTRODUCTION:
• La STL (Standard Template Library) est une
bibliothèque logicielle puissante et polyvalente
qui fait partie intégrante de la programmation
orientée objet en C++. elle offre une variété de
conteneurs (comme les vecteurs, les listes, les
piles, les files etc.), des algorithmes (comme le
tri, la recherche, la manipulation de chaînes, etc.)
et des itérateurs (pour parcourir les éléments
d'une structure de données).
3
Définition et Caractéristiques de la STL List:
• Définition:
• La STL list est une structure de données
séquentielle qui permet de stocker et de manipuler
une collection ordonnée d'éléments. Chaque
élément de la liste est lié au précédent et au
suivant, formant ainsi une chaîne dynamique. Cette
structure offre une grande flexibilité, car la taille de
la liste peut varier au fur et à mesure que des
éléments sont ajoutés ou supprimés.
4
Caractéristiques :
1. Stockage dynamique des éléments :
La liste de la STL offre un stockage dynamique, ce qui signifie que vous pouvez
ajouter ou supprimer des éléments à mesure que votre programme s'exécute,
sans vous soucier de la taille initiale de la liste.
2. Insertion et suppression efficaces aux extrémités :
Ajouter ou supprimer des éléments au début ou à la fin de la liste est une
opération rapide, ce qui est particulièrement utile pour les applications
nécessitant des mises à jour fréquentes de la structure de données.
3. Accès séquentiel aux éléments :
Vous pouvez accéder aux éléments de la liste dans l'ordre dans lequel ils sont
stockés, ce qui facilite les opérations de traitement séquentielles sur vos
données.
4. Gestion automatique de la mémoire :
La liste de la STL gère automatiquement la mémoire, ce qui signifie que vous
n'avez pas à vous soucier de l'allocation ou de la libération de la mémoire
lorsque vous ajoutez ou supprimez des éléments.
5. Itérateurs pour parcourir la liste :
Les itérateurs sont des outils puissants pour parcourir la liste, vous permettant
d'accéder, de modifier et de manipuler les éléments de manière flexible.
FONDEMENT THEORIQUE:
• Structure des Nœuds Chaînés :
• Chaque élément dans une liste chaînée est représenté par un nœud.
Chaque nœud contient deux parties principales :
• La Valeur : C'est la donnée que vous souhaitez stocker dans la liste.
Cela peut être n'importe quel type de données, en fonction de ce que
vous avez spécifié lors de la déclaration de la liste.
• Les Pointeurs : Chaque nœud contient des pointeurs vers le nœud
précédent et le nœud suivant dans la liste. Ces pointeurs permettent de
parcourir la liste dans les deux sens, ce qui est l'une des caractéristiques
clés des listes chaînées.
7
• Allocation Dynamique :
• Contrairement à un tableau statique où la mémoire
est allouée en une seule fois avec une taille fixe, les
listes chaînées utilisent l'allocation dynamique. Cela
signifie que la mémoire est allouée au fur et à mesure
que de nouveaux éléments sont ajoutés à la liste.
Cela permet à la liste de s'adapter dynamiquement à
la taille requise, sans avoir à spécifier une taille fixe à
l'avance. L'allocation dynamique est généralement
réalisée à l'aide de l'opérateur ‘new’ en C++ pour
allouer de nouveaux nœuds et de l'opérateur ‘delete’
pour libérer la mémoire lorsque les nœuds ne sont
plus nécessaires.
8
DEMONSTRATION:
exemple de code
Déclaration:
Insertion:
#include <iostream>
#include <iostream>
#include <list>
#include <list>
int main() {
std::list<int> myList;
// ...
}
int main() {
std::list<int> myList;
// Insertion
myList.push_front(5);
myList.push_back(10);
// ...
}
9
• Parcours:
10
• Suppression
11
Accès:
12
• Gestion de la taille
• Modification (TRI)
14
Biblioghraphie:
• https://ftp.traduc.org/doc-vf/gazettelinux/html/1998/lecture/issue-34/lg-34-6.html
• https://www.geeksforgeeks.org/list-cpp-stl
• https://en.cppreference.com/w/cpp/container/list
15
Merci pour votre attention
Download