.NET набор коллекции с O (1) поиска? - PullRequest
3 голосов
/ 20 января 2012

У меня есть набор уникальных целых чисел, и я хочу как можно быстрее решить, можно ли найти среди них данное целое число.

Документация для Dictionary (Of TKey, TValue) .ContainsKey говорит, что проверка наличия значения в словаре приближается к операции O (1). Поэтому, если я использую что-то вроде Dictionary<int, bool> и проверяю, присутствует ли заданное целочисленное значение, моя проблема решена. Однако это решение без необходимости сохраняет значения bool для моих ключей, и я подозреваю, что должен быть более простой способ сделать это.

Есть ли встроенное решение для этой проблемы в .NET Framework?

1 Ответ

6 голосов
/ 20 января 2012

Начиная с .NET 3.5 есть HashSet<T> - это, вероятно, то, что вы хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...