logo

Ensemble C++ find()

Ensemble C++ trouver() la fonction est utilisée pour trouver un élément avec le donné valeur val. S'il trouve l'élément, il renvoie un itérateur pointant vers l'élément, sinon il renvoie un itérateur pointant vers la fin de l'ensemble, c'est-à-dire set::end().

Syntaxe

 iterator find (const value_type& val) const; // until C++ 11 const_iterator find (const value_type& val) const; //since C++ 11 iterator find (const value_type& val); //since C++ 11 

Paramètre

Val : spécifie la valeur à rechercher dans le conteneur défini.

Valeur de retour

S'il trouve l'élément, il renvoie un itérateur pointant vers l'élément, sinon il renvoie un itérateur pointant vers la fin de l'ensemble, c'est-à-dire set::end().

Complexité

Taille logarithmique.

Validité de l'itérateur

Aucun changement.

Courses aux données

Le conteneur est accessible (ni les versions const ni les versions non const ne modifient le conteneur.

Aucune valeur mappée n'est accessible : l'accès et la modification simultanés des éléments sont sécurisés.

Sécurité exceptionnelle

Si une exception est levée, il n'y a aucun changement dans le conteneur.

Exemple 1

Voyons l'exemple simple pour trouver l'élément avec la valeur clé donnée :

 #include #include using namespace std; int main(void) { set m = {100,200,300,400}; auto it = m.find(300); cout << 'Iterator points to ' << *it << endl; return 0; } 

Sortir:

 Iterator points to 300 

Exemple 2

Voyons un exemple simple pour trouver l'élément :

chiffre romain 1 à 100
 #include #include using namespace std; int main(void) { set m = {&apos;a&apos;, &apos;b&apos;, &apos;c&apos;, &apos;d&apos;}; auto it = m.find(&apos;e&apos;); if ( it == m.end() ) { // not found cout&lt;<'element not found'; } else { found cout << 'iterator points to ' *it<< endl; return 0; < pre> <p> <strong>Output:</strong> </p> <pre> Element not found </pre> <p>In the above example, find() function finds the key value e in the set m, if it is not found in the set then it will return a not found message otherwise, it will display the set.</p> <h2>Example 3</h2> <p>Let&apos;s see a simple example:</p> <pre> #include #include using namespace std; int main() { char n; set example = {&apos;a&apos;,&apos;b&apos;,&apos;c&apos;,&apos;d&apos;,&apos;e&apos;}; cout&lt;&gt;n; auto search = example.find(n); if (search != example.end()) { cout &lt;&lt; n&lt;<' found and the value is ' << *search '
'; } else { cout n<<' not found
'; < pre> <p> <strong>Output:</strong> </p> <pre> Enter the element which you want to search: b b found and the value is b </pre> <p>In the above example, find() function is used to find the element according to user&apos;s given value.</p> <h2>Example 4</h2> <p>Let&apos;s see a simple example:</p> <pre> #include #include int main () { std::set myset; std::set::iterator it; for (int i = 1; i <= 10; i++) myset.insert(i*10); it="myset.find(40);" myset.erase (it); (myset.find(60)); std::cout << 'myset contains:'; for (it="myset.begin();" it!="myset.end();" ++it) ' *it; '
'; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> myset contains: 10 20 30 50 70 80 90 100 </pre> <br></=></pre></'></pre></'element>

Dans l'exemple ci-dessus, la fonction find() trouve la valeur clé e dans l'ensemble m, si elle n'est pas trouvée dans l'ensemble alors elle renverra un message introuvable sinon, elle affichera l'ensemble.

Exemple 3

Voyons un exemple simple :

 #include #include using namespace std; int main() { char n; set example = {&apos;a&apos;,&apos;b&apos;,&apos;c&apos;,&apos;d&apos;,&apos;e&apos;}; cout&lt;&gt;n; auto search = example.find(n); if (search != example.end()) { cout &lt;&lt; n&lt;<\' found and the value is \' << *search \'
\'; } else { cout n<<\' not found
\'; < pre> <p> <strong>Output:</strong> </p> <pre> Enter the element which you want to search: b b found and the value is b </pre> <p>In the above example, find() function is used to find the element according to user&apos;s given value.</p> <h2>Example 4</h2> <p>Let&apos;s see a simple example:</p> <pre> #include #include int main () { std::set myset; std::set::iterator it; for (int i = 1; i <= 10; i++) myset.insert(i*10); it="myset.find(40);" myset.erase (it); (myset.find(60)); std::cout << \'myset contains:\'; for (it="myset.begin();" it!="myset.end();" ++it) \' *it; \'
\'; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> myset contains: 10 20 30 50 70 80 90 100 </pre> <br></=></pre></\'>

Dans l'exemple ci-dessus, la fonction find() est utilisée pour rechercher l'élément en fonction de la valeur donnée par l'utilisateur.

Exemple 4

Voyons un exemple simple :

 #include #include int main () { std::set myset; std::set::iterator it; for (int i = 1; i <= 10; i++) myset.insert(i*10); it="myset.find(40);" myset.erase (it); (myset.find(60)); std::cout << \'myset contains:\'; for (it="myset.begin();" it!="myset.end();" ++it) \' *it; \'
\'; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> myset contains: 10 20 30 50 70 80 90 100 </pre> <br></=>