función multiconjunto find() en C++ STL

El multiset::find() es una función incorporada en C++ STL que devuelve un iterador que apunta al límite inferior del elemento que se busca en el contenedor de conjuntos múltiples. Si no se encuentra el elemento, el iterador apunta a la posición más allá del último elemento del conjunto. 

Sintaxis:

multiset_name.find(element)

Parámetros: la función acepta un elemento de parámetro obligatorio que especifica el elemento que se buscará en el contenedor de conjuntos múltiples. 

Valor devuelto: la función devuelve un iterador que apunta al elemento que se busca en el contenedor de conjuntos múltiples. Si no se encuentra el elemento, el iterador apunta a la posición justo después del último elemento del conjunto múltiple. 

Complejidad temporal: si n es el tamaño de multiset, entonces la complejidad temporal de la función multiset::find() es de orden logarítmico de n, es decir, O(log(n)). 

El siguiente programa ilustra la función anterior.

 Programa 1: 

CPP

// CPP program to demonstrate the
// multiset::find() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
 
  // Initialize multiset
  multiset<int> s;
 
  s.insert(1);
  s.insert(4);
  s.insert(2);
  s.insert(5);
  s.insert(3);
  s.insert(3);
  s.insert(3);
  s.insert(5);
 
  cout << "The set elements are: ";
  for (auto it = s.begin(); it != s.end(); it++)
    cout << *it << " ";
 
  // iterator pointing to
  // position where 2 is
  auto pos = s.find(3);
 
  // prints the set elements
  cout << "\nThe set elements after 3 are: ";
  for (auto it = pos; it != s.end(); it++)
    cout << *it << " ";
 
  return 0;
}
Producción:

The set elements are: 1 2 3 3 3 4 5 5 
The set elements after 3 are: 3 3 3 4 5 5

Programa 2: 

CPP

// CPP program to demonstrate the
// multiset::find() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
 
  // Initialize multiset
  multiset<char> s;
 
  s.insert('a');
  s.insert('a');
  s.insert('a');
  s.insert('b');
  s.insert('c');
  s.insert('a');
  s.insert('a');
  s.insert('c');
 
  cout << "The set elements are: ";
  for (auto it = s.begin(); it != s.end(); it++)
    cout << *it << " ";
 
  // iterator pointing to
  // position where 2 is
  auto pos = s.find('b');
 
  // prints the set elements
  cout << "\nThe set elements after b are: ";
  for (auto it = pos; it != s.end(); it++)
    cout << *it << " ";
 
  return 0;
}
Producción:

The set elements are: a a a a a b c c 
The set elements after b are: b c c

Publicación traducida automáticamente

Artículo escrito por gopaldave 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 *