Теория множеств и.NET

Недавно я столкнулся с ситуацией, когда теория множеств и математика соответствовали тому, что я делал с письмом (при условии, что был более простой способ выполнить то, что мне нужно - то есть LINQ - но я не думал об этом в то время). Однако я не знал ни о каких общих библиотеках набора. Предоставленные IEnumerables предоставляют некоторые операции над множествами (объединение и т. Д.), Но не имеют ничего общего с пересечением или сравнением множеств. Кто-нибудь может указать на то, что подходит здесь? Что-то, что реализует набор математики с использованием универсального типа?

2 ответа

Решение

Есть HashSet<T> в рамках (3.5+), что делает то, что вам нужно. .NET 4 также представлен SortedSet<T> и общий интерфейс ISet<T>,

System.Collections.Generic.HashSet имеет ряд операций над множествами, включая подмножество, суперсет, пересечение, объединение и т. Д.

http://msdn.microsoft.com/en-us/library/bb359438.aspx

надеюсь, это поможет

Джо

Другие вопросы по тегам