búsqueda multimapa() en C++ STL – Part 1

multimap::find() es una función incorporada en C++ STL que devuelve un iterador o un iterador constante que se refiere a la posición donde está presente la clave en el mapa múltiple. En caso de que estén presentes varias claves iguales, el iterador que hace referencia a una de las claves (normalmente, la primera). En caso de que deseemos obtener todos los elementos con una clave dada, podemos usar equal_range(). Si la clave no está presente en el contenedor multimap, devuelve un iterador o un iterador constante que hace referencia a multimap.end(). 
Sintaxis: 
 

iterator multimap_name.find(key)
        or 
constant iterator multimap_name.find(key)

Parámetros: la función acepta una clave de parámetro obligatoria que especifica la clave que se buscará en el contenedor multimapa. 
Valor de retorno: la función devuelve un iterador o un iterador constante que se refiere a la posición donde está presente la clave en el mapa múltiple. Si la clave no está presente en el contenedor multimap, devuelve un iterador o un iterador constante que hace referencia a multimap.end(). 
 

CPP

// C++ program for illustration
// of multimap::find() function
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
 
    // initialize container
    multimap<int, int> mp;
 
    // insert elements in random order
    mp.insert({ 2, 30 });
    mp.insert({ 1, 40 });
    mp.insert({ 2, 60 });
    mp.insert({ 3, 20 });
    mp.insert({ 1, 50 });
    mp.insert({ 4, 50 });
 
    cout << "The elements from position 3 in multimap are : \n";
    cout << "KEY\tELEMENT\n";
 
    // find() function finds the position at which 3 is
    for (auto itr = mp.find(3); itr != mp.end(); itr++)
        cout << itr->first
             << '\t' << itr->second << '\n';
 
    return 0;
}
Producción: 

The elements from position 3 in multimap are : 
KEY    ELEMENT
3    20
4    50

 

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 *