std::unordered_set<Key,Hash,KeyEqual,Allocator>::count
De cppreference.com
<tbody>
</tbody>
size_type count( const Key& key ) const; |
(1) | (desde C++11) |
template< class K > size_type count( const K& x ) const; |
(2) | (desde C++20) |
1) Devuelve el número de elementos con clave igual al argumento especificado
key, que es ya sea 1 o 0, ya que este contenedor no admite duplicados..2) Devuelve el número de elementos con clave equivalente al argumento especificado
x. Esta sobrecarga solo participa en la resolución de sobrecargas si Hash::is_transparent y KeyEqual::is_transparent son válidos y cada uno denota un tipo. Esto supone que tal Hash es invocable con el tipo K y Key, y que el KeyEqual es transparente, lo que, en conjunto, permite llamar a esta función sin construir un ejemplar de Key.Parámetros
| key | - | El valor de la clave de los elementos a contar. |
| x | - | Un valor de cualquier tipo que pueda compararse transparentemente con una clave. |
Valor de retorno
1) El número de elementos con clave
key, que es ya sea 1 o 0.2) El número de elementos con una clave que se compara equivalente a
x.Complejidad
Constante en el caso promedio, lineal en el tamaño del contenedor en el peor de los casos.
Ejemplo
Ejecuta este código
#include <algorithm>
#include <iostream>
#include <unordered_set>
int main() {
std::unordered_set set{2, 7, 1, 8, 2, 8, 1, 8, 2, 8};
std::cout << "El conjunto es: ";
for (int e: set) { std::cout << e << ' '; }
const auto [min, max] = std::ranges::minmax(set);
std::cout << "\nNúmeros del " << min << " al " << max << " que están en el conjunto: ";
for (int i{min}; i <= max; ++i) {
if (set.count(i) == 1) {
std::cout << i << ' ';
}
}
}
Posible salida:
El conjunto es: 8 1 7 2
Números del 1 al 8 que están en el conjunto: 1 2 7 8
Véase también
(C++11) |
Encuentra un elemento con una clave específica. (función miembro pública) |
(C++20) |
Comprueba si el contenedor contiene un elemento con una clave específica. (función miembro pública) |
(C++11) |
Devuelve un rango de elementos que coinciden con una clase específica. (función miembro pública) |