HashSetT
suggest changeThis is a collection of unique items, with O(1) lookup.
HashSet<int> validStoryPointValues = new HashSet<int>() { 1, 2, 3, 5, 8, 13, 21 };
bool containsEight = validStoryPointValues.Contains(8); // O(1)
By way of comparison, doing a Contains
on a List yields poorer performance:
List<int> validStoryPointValues = new List<int>() { 1, 2, 3, 5, 8, 13, 21 };
bool containsEight = validStoryPointValues.Contains(8); // O(n)
HashSet.Contains
uses a hash table, so that lookups are extremely fast, regardless of the number of items in the collection.
Found a mistake? Have a question or improvement idea?
Let me know.
Table Of Contents