【发布时间】:2011-01-16 22:00:28
【问题描述】:
我正在努力寻找解决这个问题的方法:
给定一个 IEnumerable> 我需要一个返回输入的方法/算法,但在多个具有相同元素的 IEnmerable 的情况下,每个巧合/组只返回一个。
例如
IEnumerable<IEnumerable<int>> seqs = new[]
{
new[]{2,3,4}, // #0
new[]{1,2,4}, // #1 - equals #3
new[]{3,1,4}, // #2
new[]{4,1,2} // #3 - equals #1
};
"foreach seq in seqs" .. 产生 {#0,#1,#2} 或 {#0,#2,#3}
我可以和..一起去吗?
.. 一些聪明的 IEqualityComparer
.. 一些我还没有想出的聪明的 LINQ 组合 - groupby, sequenceequal ..?
.. 一些 seq->HashSet 的东西
.. 什么不是。任何事情都会有帮助
我将能够通过良好的'n'old 编程来解决它,但总是很感激灵感。
【问题讨论】:
标签: c# linq ienumerable