Вместо использования std::unordered_set
функции-члена find()
для определения, присутствует ли данный ключ x
, как в:
if (S.find(x) != S.end()) { /* code */ }
, вы можете просто использовать count()
функция-член:
if (S.count(x)) { /* code */ }
std::unordered_set
не допускает дублирование, поэтому count()
вернет либо 0
, либо 1
.
The unordered_set::count()
функция-член не должна быть менее эффективной, чем unordered_set::find()
, поскольку обход элементов для определения количества запрошенного ключа может быть остановлен, как только он будет найден, поскольку не может быть дубликатов.