función unordered_multiset key_eq() en C++ STL

Unordered_multiset ::key_eq() es una función integrada en C++ STL que devuelve un valor booleano según la comparación. Depende del predicado de comparación de equivalencia de claves utilizado por el contenedor unordered_multiset. La comparación de equivalencia de claves es un predicado que toma dos argumentos y devuelve un valor booleano que indica si deben considerarse equivalentes. Devuelve verdadero si son equivalentes, de lo contrario devuelve falso. Lo adopta el contenedor en la construcción y es similar al operador (==) utilizado en la comparación. Sintaxis :

unordered_multiset_name.key_eq()(args1, args2)

Parámetro : La función acepta dos parámetros obligatorios args1 y args2 , entre los cuales se va a realizar la comparación. El tipo de datos es el mismo que el de unordered_multiset. Valor devuelto : la función devuelve un valor booleano. Los siguientes programas ilustran la función unordered_multiset::key_eq() : Programa 1

CPP

// CPP program to illustrate the
// unordered_multiset::key_eq() function
 
#include <iostream>
#include <string>
#include <unordered_set>
 
using namespace std;
 
int main()
{
 
    unordered_multiset<string> sampleSet;
 
    bool answer = sampleSet.key_eq()("GEEKS", "geeks");
 
    // checks if both are same
    if (answer)
        cout << "GEEKS and geeks are treated similarly in the container\n";
    else
        cout << "GEEKS and geeks are treated dissimilarly in the container\n";
 
    return 0;
}
Producción:

GEEKS and geeks are treated dissimilarly in the container

Tiempo Complejidad-O(1)

Programa 2

CPP

// CPP program to illustrate the
// unordered_multiset::key_eq() function
 
#include <iostream>
#include <string>
#include <unordered_set>
 
using namespace std;
 
int main()
{
 
    unordered_multiset<int> sampleSet;
 
    bool answer = sampleSet.key_eq()(100, 200);
 
    // check
    if (answer)
        cout << "100 and 200 are treated similarly in the container\n";
    else
        cout << "100 and 200 are treated dissimilarly in the container\n";
 
    answer = sampleSet.key_eq()(100, 100);
    if (answer)
        cout << "100 and 100 are treated similarly in the container\n";
    else
        cout << "100 and 100 are treated dissimilarly in the container\n";
 
    return 0;
}
Producción:

100 and 200 are treated dissimilarly in the container
100 and 100 are treated similarly in the container

Complejidad de tiempo: O(1)

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 *