0

我正在Dictionary<long, MyClass>使用MyClass.some_property作为比较值的类型字典中查找重复项:

var dict = new Dictionary<long, MyClass>(...);
var duplicates = from d in dict
                 group d by d.Value.some_property into g
                 where g.Count() > 1
                 select g;

现在我需要排除duplicates可枚举中每个分组中的第一个元素。如果不将所有内容都转换为另一种数据结构,如何做到这一点?我想避免使用任何额外的内存。

4

1 回答 1

1

您可以使用跳过

var dict = new Dictionary<long, MyClass>(...);
var duplicates = from d in dict
                 group d by d.Value.some_property into g
                 where g.Count() > 1
                 select new {Key= g.Key, Values = g.Skip(1)};
于 2013-10-26T02:22:51.450 回答