std :: trouver est une fonction définie à l'intérieur fichier d'en-tête qui trouve l'élément dans la plage donnée. Il renvoie un itérateur à la première occurrence de l'élément spécifié dans la séquence donnée. Si l'élément n'est pas trouvé, un itérateur jusqu'à la fin est renvoyé.
Syntaxe:
input_iterator std::find (input_iterator first , input_iterator l ast , const T& value );>
Paramètres:
- first : itérateur vers la position initiale dans la séquence. last : itérateur à positionner juste après la position finale de la séquence. (Notez que vector.end() pointe vers la position suivante du dernier élément de la séquence et non vers la dernière position de la séquence). value : valeur à rechercher.
Valeur de retour :
- Si la valeur est trouvé dans la séquence, l'itérateur à sa position est renvoyé.
- Si la valeur est pas trouvé , l'itérateur à la dernière position est renvoyé.
NOTE : input_iterator est le type d'itérateur du conteneur utilisé et T est le nom de type défini dans le modèle de fonction.
Exemple:
C++
formater une date en java
// C++ program to Demonstrate> // std::find for vectors> #include> // Driver code> int> main()> {> > std::vector<> int> >chose{10, 20, 30, 40};> > // Iterator used to store the position> > // of searched element> > std::vector<> int> >::itérateur;> > // Print Original Vector> > std::cout <<> 'Original vector :'> ;> > > for> (> int> i = 0; i std::cout << ' ' << vec[i]; std::cout << '
'; // Element to be searched int ser = 30; // std::find function call it = std::find(vec.begin(), vec.end(), ser); if (it != vec.end()) { std::cout << 'Element ' << ser << ' found at position : '; std::cout << it - vec.begin() << ' (counting from zero)
'; } else std::cout << 'Element not found.
'; return 0; }> |
>
>Sortir
Original vector : 10 20 30 40 Element 30 found at position : 2 (counting from zero)>
Complexité temporelle : Sur)
Espace auxiliaire : O(1)
REMARQUE : la fonction std::find() est définie dans le fichier d'en-tête. Nous devons donc inclure ce fichier d'en-tête avant d'utiliser la fonction find.
Comme nous pouvons voir que la complexité temporelle de std::find() est O(n) et qu'il fonctionne également sur des séquences non triées, nous pouvons conclure qu'il utilise le recherche linéaire algorithme dans sa mise en œuvre.
Articles Liés:
- std :: recherche
- std :: find_if, std :: find_if_not
- std :: nth_element
- std :: find_end