equal_range() en general, devuelve un rango que incluye todos los elementos iguales al valor dado. Para unordered_set donde todas las claves son distintas, el rango devuelto contiene como máximo un elemento. Sintaxis
setname.equal_range(key name)
Argumentos Toma como parámetro la clave a buscar. Valor devuelto Devuelve dos iteradores: límite inferior y superior del rango que contiene la clave. Ejemplo
CPP
// C++ program to illustrate the // unordered_set::equal_range function #include <iostream> #include <unordered_set> using namespace std; int main() { // declaration unordered_set<int> sample; // Insert some values sample.insert({ 20, 30, 40 }); // Test the equal_range function for // a given key if it does exists auto range1 = sample.equal_range(20); if (range1.first != sample.end()) { for (; range1.first != range1.second; ++range1.first) cout << *range1.first << endl; } else cout << "Element does not exist"; return 0; }
Producción
20
CPP
// C++ program to illustrate the // unordered_set::equal_range function #include <iostream> #include <unordered_set> using namespace std; int main() { // declaration unordered_set<int> sample; // Insert some values sample.insert({ 20, 30, 40 }); // Test the equal_range function // for a given key if it does not exist auto range1 = sample.equal_range(60); if (range1.first != sample.end()) { for (; range1.first != range1.second; ++range1.first) cout << *range1.first << endl; } else cout << "Element does not exist"; return 0; }
Producción
Element does not exist
Complejidad temporal: O(n)
Publicación traducida automáticamente
Artículo escrito por tufan_gupta2000 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA