All the ordered containers from the BCL can accept a custom IComparer<T>
that allows you to specify how their contents should be ordered (for example, SortedList<T>
).
HashSet
is an unordered container so it has no place in this discussion and SortedDictionary
does accept an IComparer<TKey>
.