6, 10, 2, 8, 4 est un ensemble ; 2, 4, 6, 8, 10 est un ensemble des mêmes nombres entiers, classés par ordre croissant. En mathématiques, un ensemble a des éléments uniques (éléments distincts), c'est-à-dire qu'aucun élément n'apparaît plus d'une fois. De plus, un multi-ensemble est un ensemble, où n'importe quel élément peut apparaître plus d'une fois. 6, 6, 10, 2, 2, 8, 4, 4, 4 est un multi-ensemble. 2, 2, 4, 4, 4, 6, 6, 8, 10 est le même multi-ensemble, mais avec les éléments classés par ordre croissant. Cet article ne traite pas du multiset. Il traite de la structure de données C++ appelée, set.
Une carte dans un logiciel est comme un tableau, mais c'est un tableau avec deux colonnes au lieu d'une. La première colonne a les clés et la deuxième colonne a les valeurs. Chaque ligne est une paire, faisant une paire clé/valeur. Une clé est directement liée à sa valeur.
Un exemple de carte est 'c',30, 'b',20, 'd',30, 'e',40, 'a',10. La première paire clé/valeur insérée ici est 'c',3, où 'c' est la clé et 30 est la valeur. Cette carte n'est pas ordonnée par clés. Le classement de cette carte par clés produit 'a',10, 'b',20, 'c',30, 'd',30, 'e',40. Notez qu'il peut y avoir des valeurs dupliquées, mais pas des clés dupliquées. Une carte ordonnée est une carte ordonnée par clés.
Un multi-ensemble est à un ensemble, comme un multi-carte est à une carte. Cela signifie qu'il existe des cartes avec des clés en double. Un exemple de multimap est 'a',10, 'b',20, 'b',20, 'c',30, 'c',30, 'd ',30, 'e',40. Et comme indiqué ci-dessus, cet article ne traite pas du multimap, il traite plutôt de la structure de données C++ appelée map.
En C++, une structure de données est une structure avec des propriétés (membres de données) et des méthodes (fonctions membres). Les données de la structure sont une liste ; un ensemble est une liste ; une carte est une liste de paires clé/valeur.
Cet article traite des bases des ensembles et des cartes en C++, et pour mieux comprendre cet article, le lecteur doit avoir des connaissances de base en C++.
Contenu de l'article :
- Classe et ses objets
- Création d'un ensemble ou d'une carte
- Notions de base sur l'itérateur
- Accès aux éléments pour l'ensemble et la carte
- Ordre des éléments dans un ensemble ou une carte
- Autres fonctions membres couramment utilisées
- Conclusion
Classe et ses objets :
En C++, l'ensemble, la carte et d'autres structures similaires sont appelés conteneurs. Une classe est une unité généralisée avec des données membres, qui sont des variables, et des fonctions membres qui sont liées. Lorsque les données membres reçoivent des valeurs, un objet est formé. Cependant, un objet est formé dans un processus appelé, l'instanciation. Comme une classe peut conduire à des valeurs différentes pour les mêmes variables membres de données, différents objets peuvent alors être instanciés à partir de la même classe.
En C++, un ensemble inutilisable est une classe, ainsi qu'une map inutilisable. Lorsqu'un objet est instancié à partir de l'ensemble inutilisable ou de la carte inutilisable, l'objet devient la véritable structure de données. Avec les structures de données set et map, le membre de données principal est une liste. Eh bien, l'ensemble et la carte forment un groupe de conteneurs appelés conteneurs associatifs ordonnés. L'ensemble non ordonné et la carte non ordonnée existent également, mais ceux-ci ne sont malheureusement pas abordés dans cet article.
Création d'un ensemble ou d'une carte :
Instancier un ensemble à partir de sa classe d'ensembles, c'est créer un ensemble ; instancier une carte à partir de sa classe de carte crée une carte. L'objet ainsi créé se voit attribuer un nom au choix du programmeur.
Afin de créer un ensemble, le programme doit commencer par :
#inclure
#inclure
en utilisant l'espace de noms std ; Notez la directive "#include ”, qui inclut la bibliothèque d'ensembles qui a la classe d'ensembles à partir de laquelle les structures de données d'ensembles seront instanciées.
Afin de créer une carte, le programme doit commencer par :
#inclure
#inclure