std::buscar en C++ – Part 2

Encuentra el elemento en el rango dado de números. Devuelve un iterador al primer elemento en el rango [primero, último] que se compara igual a val. Si no se encuentra tal elemento, la función regresa en último lugar. Plantilla de función:

InputIterator find (InputIterator primero, InputIterator último, const T& val)

first,last :
iteradores de entrada a las posiciones inicial y final en una secuencia. El rango
buscado es [primero,último), que contiene todos los elementos entre primero y
último, incluido el elemento apuntado por primero pero no el elemento apuntado por último.

val :
valor a buscar en el rango

Valor de retorno:
un iterador al primer elemento en el rango que se compara igual a val.
Si ningún elemento coincide, la función regresa en último lugar.

Ejemplos:

Input : 10 20 30 40
Output : Element 30 found at position : 2 (counting from zero)  

Input : 8 5 9 2 7 1 3 10
Output : Element 4 not found.    

CPP

// CPP program to illustrate
// std::find
// CPP program to illustrate
// std::find
#include<bits/stdc++.h>
  
int main ()
{
    std::vector<int> vec { 10, 20, 30, 40 };
  
    // Iterator used to store the position
    // of searched element
    std::vector<int>::iterator it;
  
    // Print Original Vector
    std::cout << "Original vector :";
    for (int i=0; i<vec.size(); i++)
        std::cout << " " << vec[i];
  
    std::cout << "\n";
  
    // 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) \n" ;
    }
    else
        std::cout << "Element not found.\n\n";
  
    return 0;
}

Producción:

Original vector : 10 20 30 40
Element 30 found at position : 2 (counting from zero)

Complejidad de tiempo: O(n)

Espacio Auxiliar: O(1)

Artículos relacionados: 

Este artículo es una contribución de Sachin Bisht . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *