What data structures in .NET do O(1) on Contains() calls?
I'm drawing a blank here; I can't find it, unless I'm really overlooking something under my nose.
I'm trying to store a list of ints in a data structure.
int exists in the list already.
The generic List<int> does an O(n) operation with its Contains().
Dictionary<>'s Contains(), which does an O(1) operation because it hashes the keys.
I know the answer is something so simpl开发者_开发百科e and that I've worked for too long today I can't remember it.
Help!
Will HashSet<T> work for you?
Since I work with C# 2.0 because of platform constraints, I usually use Dictionary<int,bool>, with the constraint that if a key is in the map, the bool is true (so the bool isn't really encoding any information -- it's just a substitute for the missing unit type from .NET).
加载中,请稍侯......
精彩评论