Looking for c# Keywords? Try Ask4Keywords

C# Language HashSet


пример

Это коллекция уникальных предметов, с O (1) поиском.

HashSet<int> validStoryPointValues = new HashSet<int>() { 1, 2, 3, 5, 8, 13, 21 };
bool containsEight = validStoryPointValues.Contains(8); // O(1)

Для сравнения, выполнение Contains в списке дает более низкую производительность:

List<int> validStoryPointValues = new List<int>() { 1, 2, 3, 5, 8, 13, 21 };
bool containsEight = validStoryPointValues.Contains(8); // O(n)

HashSet.Contains использует хеш-таблицу, так что поиск выполняется очень быстро, независимо от количества элементов в коллекции.