c# - when - Is there a “Set” data structure in.Net?
struct vs class c# (4)
HashSet<T> is about the closest you'll get, I think.
Ideally, I'm looking for a templated logical Set class. It would have all of the standard set operations such as Union, Intersection, Etc., and collapse duplicated items.
I ended up creating my own set class based on the C# Dictionary<>- just using the Keys.
Have you checked out the HashSet in 3.5?
I don't think c# has anything built in, but I know there are a couple of implementations floating around on the net. There are also some good articles around on this sort of thing:
This is part 6 of a series on efficiently representing data structure. This part focuses on representing sets in C#.
I've actually used this library myself as the basis of a set implementation that I did a year or so ago.
No, there is not one natively in the framework. There is an open source implementation that most projects use, (i.e. nHibernate) called Iesi.Collections. Here's a CodeProject article about it: