Maison > développement back-end > C++ > Comment supprimer des éléments avec une valeur spécifique d'un vecteur STL ?

Comment supprimer des éléments avec une valeur spécifique d'un vecteur STL ?

DDD
Libérer: 2024-11-19 02:59:03
original
234 Les gens l'ont consulté

How Do I Remove Elements with a Specific Value from an STL Vector?

Suppression d'éléments avec une valeur spécifique d'un vecteur STL

Dans le contexte des opérations vectorielles STL, il peut être surprenant qu'il y ait aucune méthode explicite pour supprimer des éléments en fonction de leurs valeurs. Cette opération courante peut être réalisée en utilisant différentes approches.

Utilisation de std::remove

La fonction std::remove sert de méthode utilitaire pour la manipulation de vecteurs. Il réorganise discrètement les éléments du vecteur, en déplaçant ceux qui ne doivent pas être supprimés vers l'avant. Sa valeur de retour est un itérateur pointant vers l'élément suivant le dernier qui n'a pas été supprimé. Cet itérateur peut ensuite être utilisé comme argument à std::erase pour éliminer définitivement les éléments redondants désormais situés à la fin du vecteur :

std::vector<int> vec;
// Initialize vec with values
int value = n;
vec.erase(std::remove(vec.begin(), vec.end(), value), vec.end());
Copier après la connexion

Cette approche identifie et supprime efficacement les éléments spécifiés du vecteur tout en conservant son ordre logique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal