Теория множеств и .NET - PullRequest
6 голосов
/ 24 мая 2010

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

Ответы [ 2 ]

6 голосов
/ 24 мая 2010

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

1 голос
/ 24 мая 2010

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

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

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

Джо

...